原创 iOS 面試第十四節 程序設計題

設計一個通過LRU緩存機制確定存儲方案:答案揭曉 確定存儲方案: 我們常用的存儲方案數組、鏈表。但是方案選鏈表存儲。原因如下: 由於數組是進行連續內存創建,需要在內存中開闢一塊連續內存地址才能進行的,而鏈表是將很多歌分散的內存連

原创 老闆保時捷,我是自行車。

上週六有個老闆約我見面,希望我去負責他公司技術團隊的搭建工作。本來有些不想去,因爲工作地點在一個四線城市,從北京過去高鐵也需要兩三個小時,但老闆很熱情的給報銷來回車費,所以週六就動身出發了。 老闆去車站接我,開着他的保時捷。看他的

原创 iOS 面試第九節 多線程

多線程1.進程與線程2.什麼是多線程?3.多線程的優點和缺點4.同步(Synchronous) 和 異步(Asynchronous)5.串行(Serial)和 並行(Parallelism)6.並行(Parallelism) 和

原创 iOS 面試第三節 Foundation框架

Foundation框架1.nil、NIL、NSNULL 、NULL有什麼區別?2.如何實現一個線程安全的 NSMutableArray? 所有的Mac OS X和IOS程序都是由大量的對象構成,而這些對象的根對象都是NSObje

原创 iOS 面試第六節 內存管理

內存管理1. proprety 介紹 實例對象的內存結構、類對象內存結構、元類對象內存結構2.Object-C語言中常用的屬性proprety有哪些?有什麼區別嗎?3. 爲什麼weak修飾的屬性,當其實例被釋放後,可以置爲nil?

原创 囊中無一物、此生徒傷悲。

滿血復活記復活前的話一週內目標(這兩天)月目標半年內目標 復活前的話   最近半年多,經歷了很多,頹廢了很多,人如果不經歷事情是無法成長的,經歷了不長記性也是無法成長,哪怕經歷了記住了,過幾天又忘了那也是無用的,如果不是今天看到

原创 iOS 面試第十一節 編程方式與架構

編程方式與架構鏈式編程響應編程 鏈式編程 可以用在什麼地方: 按鈕添加點擊事件 KVO使用 對textfield文字改變的監聽 對Label imageView添加點擊事件 通知 定時器使用 多個信號同時執行 rac_liftS

原创 iOS 面試第十三節 三方庫

三方庫1.進程與線程2.什麼是多線程?3.多線程的優點和缺點4.多線程的 並行 和 併發 有什麼區別?5.iOS中實現多線程的幾種方案,各自有什麼特點?6.多個網絡請求完成後執行下一步7.多個網絡請求順序執行後執行下一步8.異步操

原创 iOS 面試第二節 算法

算法 此處暫時做一個tag標誌,先處理後面更重要的事情,然後回頭處理這邊。

原创 iOS 面試第七節 消息傳遞的方式

w@TOC 1. KVC實現原理 KVC,鍵-值編碼,使用字符串直接訪問對象的屬性。 底層實現,當一個對象調用setValue方法時,方法內部會做以下操作: 1.檢查是否存在相應key的set方法,如果存在,就調用set方法 2

原创 iOS 面試第八節 網絡

網絡1.網絡七層協議2.Http 和 Https 的區別?Https爲什麼更加安全?3.HTTPS的連接建立流程4.charles如何抓到數據的5.HTTP TCP區別6.解釋一下 TCP 的三次握手 和 四次揮手7.TCP 和

原创 iOS 面試第十二節Runloop

Runloop1.什麼是RunLoop2.Runloop 和線程的關係?3.RunLoop的運行模式4.runloop內部邏輯?5.autoreleasePool 在何時被釋放?6.子線程中的自動釋放池是什麼時候釋放的?7.GCD

原创 iOS 面試第十五節 組件化

組件化1.組件化有什麼好處?2.你是如何組件化解耦的?3.爲什麼CTMediator方案優於基於Router的方案?4.基於CTMediator的組件化方案,有哪些核心組成? 1.組件化有什麼好處? 業務分層、解耦,使代碼變得可

原创 iOS 組件實現

如何實現組件化我們pod install 一個庫,是如何加載到項目的創建本地組件庫的流程創建遠端組件庫的流程 我們需要用到的命令 git add . 提交到暫存區 git commit -m “xccxx” 提交到本地庫

原创 iOS 面試第五節 WebView

WebView1.說一下 JS 和 OC 互相調用的幾種方式?2.在使用 WKWedView 時遇到過哪些問題? 1.說一下 JS 和 OC 互相調用的幾種方式? js調用oc的三種方式: 根據網頁重定向截取字符串通過url