這個欄目將持續更新--請iOS的小夥伴關注!

1、[多線程的應用](多線程的應用)

2、[GCD實現多個請求都完成之後返回結果](GCD實現多個請求都完成之後返回結果)

3、[A、B兩個int數組,得到A數組中B數組不包含的元素](A、B兩個int數組,得到A數組中B數組不包含的元素)

4、[事件傳遞鏈,頁面上一個按鈕,按鈕和它的superView有一樣的action,為什麼只執行button的action?](事件傳遞鏈,頁面上一個按鈕,按鈕和它的superView有一樣的action,為什麼只執行button的action?)

5、[runtime的應用](runtime的應用)

6、[array中加入對象,對象的retainCount會加1 如何是的對象自己管理自己的生命周期](array中加入對象,對象的retainCount會加1 如何是的對象自己管理自己的生命周期)

7、[bugly的卡頓監控原理](bugly的卡頓監控原理)

8、[如何架構一個app](如何架構一個app)

9、[c中,malloc對象,傳入了size,free只需要指針,這是為什麼?](c中,malloc對象,傳入了size,free只需要指針,這是為什麼?)

10、[資料庫選擇原因(realm 、coreData、FMDB、Sqlite)](資料庫選擇原因(realm 、coreData、FMDB、Sqlite))

11、[資料庫做過哪些優化](資料庫做過哪些優化)

12、[腳本打包原理](腳本打包原理)

13、[app運行過程中,同時最多有幾個線程,怎麼實現的高並發](app運行過程中,同時最多有幾個線程,怎麼實現的高並發)

14、[iOS應用導航模式有哪些?](iOS應用導航模式有哪些?)

15、[iOS中持久化方式有哪些?](iOS中持久化方式有哪些?)

16、[iOS單元測試框架有哪些?](iOS單元測試框架有哪些?)

17、[iOS atomatic nonatomic區別和理解](iOS atomatic nonatomic區別和理解)

18、[#import 跟 #include 有 什 么 區 別 , @class 呢 , #import<> 跟 #import」 」有什麼區別?](#import 跟 #include 有 什 么 區 別 , @class 呢 , #import<> 跟 #import」 」有什麼區別?)

19、[Object-c 的類可以多重繼承么?可以實現多個介面么?Category 是什 么?重寫一個類的方式用繼承好還是分類好?為什麼?](Object-c 的類可以多重繼承么?可以實現多個介面么?Category 是什 么?重寫一個類的方式用繼承好還是分類好?為什麼?)

20、[屬性 readwrite,readonly,assign,retain,copy,nonatomic 各是 什麼作用,在那種情況下用?](屬性 readwrite,readonly,assign,retain,copy,nonatomic 各是 什麼作用,在那種情況下用?)

21、[對於語句 NSString*obj=[[NSDataalloc]init];obj 在編譯時和運行時 分別時什麼類型的對象?](對於語句 NSString*obj=[[NSDataalloc]init];obj 在編譯時和運行時 分別時什麼類型的對象?)

22、[常見的 objective-c 的數據類型有那些, 和 C 的基本數據類型有什 么區別?如:NSInteger 和 int](常見的 objective-c 的數據類型有那些, 和 C 的基本數據類型有什 么區別?如:NSInteger 和 int)

23、[Objective-C 如何對內存管理的,說說你的看法和解決方法?](Objective-C 如何對內存管理的,說說你的看法和解決方法?)

24、[原子(atomic)跟非原子(non-atomic)屬性有什麼區別?](原子(atomic)跟非原子(non-atomic)屬性有什麼區別?)

25、[ObjectC 中創建線程的方法是什麼?如果在主線程中執行代碼,方 法是什麼?如果想延時執行代碼、方法又是什麼?](ObjectC 中創建線程的方法是什麼?如果在主線程中執行代碼,方 法是什麼?如果想延時執行代碼、方法又是什麼?)

26、[淺複製和深複製的區別?](淺複製和深複製的區別?)

27、[類別的作用?繼承和類別在實現中有何區別?](類別的作用?繼承和類別在實現中有何區別?)

28、[類別和類擴展的區別](類別和類擴展的區別。)

29、[我們說的 OC 是動態運行時語言是什麼意思?](我們說的 OC 是動態運行時語言是什麼意思?)

30、[類變數的@protected,@private,@public,@package,聲明各有什麼 含義?](類變數的@protected,@private,@public,@package,聲明各有什麼 含義?)

31、[簡述 OC 中內存管理機制。與 retain 配對使用的方法是 dealloc 還 是 release,為什麼?需要與 alloc 配對使用的方法是 dealloc 還是 release,為什麼...](簡述 OC 中內存管理機制。與 retain 配對使用的方法是 dealloc 還 是 release,為什麼?需要與 alloc 配對使用的方法是 dealloc 還是 release,為什麼...)

32、[說說響應鏈](說說響應鏈)

33、[線程是什麼?進程是什麼?二者有什麼區別和聯繫?](線程是什麼?進程是什麼?二者有什麼區別和聯繫?)

34、[RunLoop 是什麼?](RunLoop 是什麼?)

35、[簡述你對 UIView、UIWindow 和 CALayer 的理解](簡述你對 UIView、UIWindow 和 CALayer 的理解)

36、[iOS 的動態性](iOS 的動態性)

37、[談談對性能優化的看法,如何做?](談談對性能優化的看法,如何做?)

38、[NSAutoreleasePool 是怎麼工作的?](NSAutoreleasePool 是怎麼工作的?)

39、[什麼情況使用 weak 關鍵字,相比 assign 有什麼不同?](什麼情況使用 weak 關鍵字,相比 assign 有什麼不同?)

40、[runtime 如何實現 weak 屬性?](runtime 如何實現 weak 屬性?)

41、[怎麼用 copy 關鍵字?](怎麼用 copy 關鍵字?)

42、[用 @property 聲明的 NSString(或 NSArray,NSDictionary)經常使用 copy 關鍵字,為什麼?如果改用 strong 關鍵字,可能造成什麼問題?](用 @property 聲明的 NSString(或 NSArray,NSDictionary)經常使用 copy 關鍵字,為什麼?如果改用 strong 關鍵字,可能造成什麼問題?)

43、[怎麼理解淺拷貝與深拷貝?](怎麼理解淺拷貝與深拷貝?)

44、[如何讓自己的類用 copy 修飾符?](如何讓自己的類用 copy 修飾符?)

45、[@property 的本質是什麼?](@property 的本質是什麼?)

46、[@protocol 和 category 中如何使用 @property?](@protocol 和 category 中如何使用 @property?)

47、[category 和 extension 有什麼區別?category 是如何載入的?category 的方法覆蓋是怎麼處理的?](category 和 extension 有什麼區別?category 是如何載入的?category 的方法覆蓋是怎麼處理的?)

48、[@synthesize 和 @dynamic 分別有什麼作用?](@synthesize 和 @dynamic 分別有什麼作用?)

49、[ARC 下,不顯式指定任何屬性關鍵字時,默認的關鍵字都有哪些?](ARC 下,不顯式指定任何屬性關鍵字時,默認的關鍵字都有哪些?)

50、[在有了自動合成屬性實例變數之後,@synthesize 還有哪些使用場景?](在有了自動合成屬性實例變數之後,@synthesize 還有哪些使用場景?)

51、[一個 objc 對象如何進行內存布局(考慮有父類的情況)?](一個 objc 對象如何進行內存布局(考慮有父類的情況)?)

52、[runtime 如何通過 selector 找到對應的 IMP 地址(分別考慮實例方法和類方法)?Selector、Method 和 IMP 的有什麼區別與聯繫?](runtime 如何通過 selector 找到對應的 IMP 地址(分別考慮實例方法和類方法)?Selector、Method 和 IMP 的有什麼區別與聯繫?)

53、[objc 中的類方法和實例方法有什麼本質區別和聯繫?](objc 中的類方法和實例方法有什麼本質區別和聯繫?)

54、[objc_msgSend、_objc_msgForward 都是做什麼的?OC 中的消息調用流程是怎樣的?](objc_msgSend、_objc_msgForward 都是做什麼的?OC 中的消息調用流程是怎樣的?)

55、[能否向編譯後得到的類中增加實例變數?能否向運行時創建的類中添加實例變數?為什麼?](能否向編譯後得到的類中增加實例變數?能否向運行時創建的類中添加實例變數?為什麼?)

56、[runloop 和線程有什麼關係?](runloop 和線程有什麼關係?)

57、[runloop 的 mode 作用是什麼?](runloop 的 mode 作用是什麼?)

58、[以 + scheduledTimerInterval... 的方式觸發的 timer,在滑動頁面上的列表時,timer 會暫定回調,為什麼?如何解決?WithTime](猿_員 - 簡書)

59、[猜想 runloop 內部是如何實現的?](猜想 runloop 內部是如何實現的?)

60、[聊一聊iOS 中的離屏渲染?](聊一聊iOS 中的離屏渲染?)

61、[objc 使用什麼機制管理對象內存?](objc 使用什麼機制管理對象內存?)

62、[ARC 通過什麼方式幫助開發者管理內存?](ARC 通過什麼方式幫助開發者管理內存?)

63、[iOS 開發中常見的內存問題有哪些?](iOS 開發中常見的內存問題有哪些?)

64、[一個 autorealese 對象在什麼時刻釋放?](一個 autorealese 對象在什麼時刻釋放?)

65、[如何實現 autoreleasepool 的?](如何實現 autoreleasepool 的?)

66、[如何用 GCD 同步若干個非同步調用?](如何用 GCD 同步若干個非同步調用?)

67、[dispatch_barrier_async 的作用是什麼?](dispatch_barrier_async 的作用是什麼?)

68、[如何手動觸發一個 value 的 KVO?](如何手動觸發一個 value 的 KVO?)

69、[BAD_ACCESS 在什麼情況下出現?](BAD_ACCESS 在什麼情況下出現?)

70、[動態計算文本高度的時候需要注意什麼?](動態計算文本高度的時候需要注意什麼?)

71、[如何優化 App 的啟動耗時?](如何優化 App 的啟動耗時?)

72、[什麼是事件響應鏈?](什麼是事件響應鏈?)

73、[當我們要做一些基於 CALayer 的動畫時,有時需要設置 layer 的錨點來配合動畫,這時候我們需要注意什麼?](當我們要做一些基於 CALayer 的動畫時,有時需要設置 layer 的錨點來配合動畫,這時候我們需要注意什麼?)

74、[聊一聊 TCP 的滑動窗口協議?](聊一聊 TCP 的滑動窗口協議?)

75、[聊一聊 TCP 的擁塞控制相關過程?](聊一聊 TCP 的擁塞控制相關過程?)

76、[聊一聊你知道的幾種查找樹?](聊一聊你知道的幾種查找樹?)

77、[load 和 initialize 方法的區別?](load 和 initialize 方法的區別?)

78、[如何優化 App 的的包大小?](如何優化 App 的的包大小?)

79、[struct和class的區別](struct和class的區別)

80、[介紹一下觀察者模式](介紹一下觀察者模式)

81、[在一個HTTPS連接的網站里,輸入賬號密碼點擊登錄後,到伺服器返回這個請求前,中間經歷了什麼](在一個HTTPS連接的網站里,輸入賬號密碼點擊登錄後,到伺服器返回這個請求前,中間經歷了什麼)

82、[在一個app中間有一個button,在你手觸摸屏幕點擊後,到這個button收到點擊事件,中間發生了什麼](在一個app中間有一個button,在你手觸摸屏幕點擊後,到這個button收到點擊事件,中間發生了什麼)

83、[循環引用的產生原因,以及解決方法](循環引用的產生原因,以及解決方法)

84、[鍵路徑(keyPath)、鍵值編碼(KVC)、鍵值觀察(KVO)](鍵路徑(keyPath)、鍵值編碼(KVC)、鍵值觀察(KVO))

85、[NSNotification、Block、Delegate和KVO的區別](NSNotification、Block、Delegate和KVO的區別)

86、[static、self、super關鍵字的作用](static、self、super關鍵字的作用)

87、[iOS開發中數據持久性有哪幾種?](iOS開發中數據持久性有哪幾種?)

88、[Core Data的6成員對象](Core Data的6成員對象)

89、[Core Data的功能](Core Data的功能)

90、[堆和棧的區別](堆和棧的區別)

91、[線程與進程的區別和聯繫?](線程與進程的區別和聯繫?)

92、[多線程編程](多線程編程)


推薦閱讀:
相关文章