IOS技能樹總結(jié)

最近記錄一下iOS面試題难菌,只做筆記竞惋,方便隨時查看柜去,如有不當之處感謝大牛指點。目錄如下拆宛,持續(xù)更新嗓奢。

技能要求

UI視圖

OC語言

Runtime

內(nèi)存管理

Block

多線程

RunLoop

網(wǎng)絡

設計模式

架構(gòu)/框架

算法

第三方

面試總結(jié)

1.技能要求

? ? ?初級:

精通Objective-C語言基礎

精通UIKit等Cocoa Framework

熟悉網(wǎng)絡通信機制以及常用數(shù)據(jù)傳輸協(xié)議

具備主流開源框架的使用經(jīng)驗

?? ??中級:

扎實的編程基礎、能夠設計出良好的數(shù)據(jù)結(jié)構(gòu)浑厚、能用一些算法解決一些實際的問題

能夠深入的理解一些OC語言的機制(比如Runtime實際是OC語言的一個基石)股耽、內(nèi)存管理根盒、網(wǎng)絡、多線程物蝙、GUI

精通常用設計模式炎滞、框架、架構(gòu)

良好的分析诬乞、解決問題的能力(源碼的學習可以深入的了解一些解決問題的思路和邏輯册赛,包括學習系統(tǒng)的設計方案和思想)

? ? ?高級:

解決研發(fā)過程中的關(guān)鍵問題和技術(shù)難題(創(chuàng)造性的提出一些解決方案)

調(diào)優(yōu)設備流量、性能震嫉、電量等

較強的軟件設計能力

對iOS內(nèi)部原理有深刻理解

? ? ? 資深:

精通高性能編程以及性能調(diào)優(yōu)(ps: 對象的創(chuàng)建--前期就考慮用多線程處理這些問題 ?击奶、大量字符串的遍歷--選擇一個較優(yōu)的算法,在前期解決掉)

靈活運用數(shù)據(jù)結(jié)構(gòu)责掏、算法解決復雜程序設計問題

提供性能優(yōu)化柜砾、日志搜集、統(tǒng)計分析等方案

架構(gòu)换衬、模塊設計


2.UI視圖

UITableView相關(guān)(重用機制的理解和運用方面痰驱,包括我們在UITableView的使用過程中,會涉及到對數(shù)據(jù)源的一個多線程的操作瞳浦,這里面就涉及到了一個數(shù)據(jù)源同步的問題)

事件響應&視圖響應

圖像顯示原理(UI視圖的圖像顯示原理是怎樣的担映?我們創(chuàng)建了一個控件,最后是如何轉(zhuǎn)化到屏幕上的每一個像素點的呢叫潦?)

UI卡頓蝇完、掉幀

UI繪制原理/異步繪制原理

離屏渲染


3.OC語言

分類(分類的實現(xiàn)機制、原理是怎樣的矗蕊?我們應該怎樣為一個分類提供實例變量呢短蜕?涉及到關(guān)聯(lián)對象的考察)

關(guān)聯(lián)對象

擴展、代理怎么使用

KVO傻咖、KVC( 系統(tǒng)的實現(xiàn)機制朋魔、原理、包括涉及到了哪些設計思想)

NSNotification

屬性關(guān)鍵字


4.Runtime

對象卿操、類對象警检、元類對象是怎么理解的?以及他們之間的關(guān)系是怎樣的害淤?

消息的傳遞機制是怎樣的扇雕?

消息轉(zhuǎn)發(fā)流程是怎樣的?

方法緩存 ?(我們進行方法查找的過程當中窥摄,會使用到系統(tǒng)或者說Runtime中一個方法緩存的機制镶奉,這個機制又是怎樣運行的呢?)

Methood-Swizzling是Runtime的一種運用,可能會結(jié)合實際的場景腮鞍,比如說通過時長統(tǒng)計框架這樣的考察來了解對于Runtime的Methood-Swizzling技術(shù)的一個實際的運用

動態(tài)添加方法

5.內(nèi)存管理

ARC

MRC

引用計數(shù)機制

弱引用表

AutoReleasePool的實現(xiàn)機制和原理是怎樣的

循環(huán)引用

6.Block

Block的本質(zhì)(什么是block,你對block的理解)

截獲變量特性

__block修飾符的本質(zhì)(在什么情況下使用)

Block的內(nèi)存管理

循環(huán)引用(Block經(jīng)常會產(chǎn)生的循環(huán)引用)

7.多線程

GCD(講述多線程的各種技術(shù)方案GCD莹菱、NSOperation/NSOperationQueue移国、NSThread)

NSOperation/NSOperationQueue

NSThread

線程同步、資源共享(在我們實際運用多線程運用技術(shù)過程中道伟,所產(chǎn)生或者引發(fā)的線程同步迹缀、資源共享問題)

互斥鎖、自旋鎖蜜徽、遞歸鎖等相關(guān)鎖的一些技術(shù)內(nèi)容


8.RunLoop

什么是RunLoop?(剖析RunLoop的源碼)

Mode/Source/Timer/Observer

事件循環(huán)機制(RunLoop有事做事祝懂,沒事休息是由事件循環(huán)機制來維護的)

RunLoop與NSTimer之間的關(guān)系是怎樣的?(我們在使用NSTimer的時候拘鞋,應該怎樣考慮和RunLoop的關(guān)系砚蓬,包括RunLoop所帶來的影響)

RunLoop與線程之間有什么關(guān)系?

如何通過RunLoop來實現(xiàn)常駐線程盆色?


9.網(wǎng)絡

HTTP協(xié)議(什么是HTTP灰蛙,HTTP當中的get和post有什么區(qū)別)

HTTPS與網(wǎng)絡安全(HTTPS連接建立流程是什么,它與安全又有怎么的關(guān)系呢)

TCP/UDP(TCP連接建立的三次握手隔躲,四次揮手以及UDP和長鏈接之間都有怎樣的關(guān)系和含義呢)

DNS解析

Session/Cookie

10.設計模式

六大設計原則(設計模式所遵從的六大設計原則)

責任鏈

橋接

適配器

單例

命令


11.架構(gòu)/框架

圖片緩存框架

時長統(tǒng)計框架

復雜頁面架構(gòu)設計

客戶端整體架構(gòu)


12.算法

字符串反轉(zhuǎn)

鏈表反轉(zhuǎn)

有序數(shù)組合并

Hash算法

查找兩個子視圖的共同父視圖

求無序數(shù)組當中的中位數(shù)


13.第三方庫

AFNetworking

SDWebImageView

Reactive Cocoa

AsyncDisplayKit


14.章節(jié)結(jié)構(gòu)

? ?真題入手-->技術(shù)原理-->企業(yè)級實踐

————————————————

版權(quán)聲明:本文為CSDN博主「ochenmengo」的原創(chuàng)文章摩梧,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明宣旱。

原文鏈接:https://blog.csdn.net/ochenmengo/article/details/104527860/

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末仅父,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子浑吟,更是在濱河造成了極大的恐慌笙纤,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件组力,死亡現(xiàn)場離奇詭異粪糙,居然都是意外死亡,警方通過查閱死者的電腦和手機忿项,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門蓉冈,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人轩触,你說我怎么就攤上這事寞酿。” “怎么了脱柱?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵伐弹,是天一觀的道長。 經(jīng)常有香客問我榨为,道長惨好,這世上最難降的妖魔是什么煌茴? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮日川,結(jié)果婚禮上蔓腐,老公的妹妹穿的比我還像新娘。我一直安慰自己龄句,他們只是感情好回论,可當我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著分歇,像睡著了一般傀蓉。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上职抡,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天葬燎,我揣著相機與錄音,去河邊找鬼缚甩。 笑死萨蚕,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的蹄胰。 我是一名探鬼主播岳遥,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼裕寨!你這毒婦竟也來了浩蓉?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤宾袜,失蹤者是張志新(化名)和其女友劉穎捻艳,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體庆猫,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡认轨,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了月培。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嘁字。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖杉畜,靈堂內(nèi)的尸體忽然破棺而出纪蜒,到底是詐尸還是另有隱情,我是刑警寧澤此叠,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布纯续,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏猬错。R本人自食惡果不足惜窗看,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望倦炒。 院中可真熱鬧显沈,春花似錦、人聲如沸析校。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽智玻。三九已至,卻和暖如春芙代,著一層夾襖步出監(jiān)牢的瞬間吊奢,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工纹烹, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留页滚,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓铺呵,卻偏偏與公主長得像裹驰,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子片挂,可洞房花燭夜當晚...
    茶點故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1.設計模式是什么幻林? 你知道哪些設計模式,并簡要敘述音念? 設計模式是一種編碼經(jīng)驗沪饺,就是用比較成熟的邏輯去處理某一種類...
    司馬DE晴空閱讀 1,295評論 0 7
  • 一、深復制和淺復制的區(qū)別闷愤? 1整葡、淺復制:只是復制了指向?qū)ο蟮闹羔槪磧蓚€指針指向同一塊內(nèi)存單元讥脐!而不復制指向?qū)ο蟮?..
    iOS_Alex閱讀 1,378評論 1 27
  • 1. 父類實現(xiàn)深拷貝時遭居,子類如何實現(xiàn)深度拷貝。父類沒有實現(xiàn)深拷貝時旬渠,子類如何實現(xiàn)深度拷貝魏滚。 1.1 深拷貝同淺拷貝...
    iYeso閱讀 1,893評論 0 13
  • 1,NSObject中description屬性的意義坟漱,它可以重寫嗎?答案:每當 NSLog(@"")函數(shù)中出現(xiàn) ...
    eightzg閱讀 4,146評論 2 19
  • 我慢慢明白我為什么不快樂鼠次,因為我總期待一個結(jié)果,看一本書期待它讓我變深刻,運動時期待它讓我一斤斤瘦下來腥寇,發(fā)一條短信...
    Kingsley劉家俊閱讀 42評論 0 0