十個(gè)iOS高級(jí)面試問(wèn)題

原文連接
十個(gè)iOS高級(jí)面試問(wèn)題
不管對(duì)于招聘和應(yīng)聘來(lái)說(shuō)蔓姚,面試都是很重要的一個(gè)環(huán)節(jié)卓囚,特別對(duì)于開(kāi)發(fā)者來(lái)說(shuō)簿盅,面試中的技術(shù)問(wèn)題環(huán)節(jié)不僅是企業(yè)對(duì)應(yīng)聘者技能和積累的考察轧拄,也是一個(gè)開(kāi)發(fā)者自我檢驗(yàn)的好機(jī)會(huì)揽祥。對(duì)于iOS和Mac開(kāi)發(fā)來(lái)說(shuō),因?yàn)楸臼逻€算比較新檩电,企業(yè)對(duì)于這方面的開(kāi)發(fā)者需求也比較大拄丰,所以面試時(shí)的要求可能并不是很高府树,一般能知道一些Cocoa和OC的基本知識(shí)也就認(rèn)為可以了。但是對(duì)于一個(gè)希望擁有技術(shù)力基礎(chǔ)的企業(yè)的iOS或者M(jìn)ac開(kāi)發(fā)來(lái)說(shuō)料按,兩到三個(gè)頂尖的熟練技術(shù)人員奄侠,帶領(lǐng)一些還較為初級(jí)的開(kāi)發(fā)者,共同完成項(xiàng)目應(yīng)該是比較常見(jiàn)的構(gòu)成载矿。

Cocoa特別是CocoaTouch的開(kāi)發(fā)垄潮,上手可以說(shuō)十分容易,但是背后隱藏的細(xì)節(jié)和原理卻很豐富闷盔。一方面對(duì)于基礎(chǔ)不夠熟練和清晰(比如從一個(gè)AppDelegate開(kāi)始用代碼構(gòu)建ViewController弯洗,或者清晰地說(shuō)明棧和堆之類(lèi)的概念),另一方面對(duì)于更進(jìn)階的開(kāi)發(fā)知之甚少(比如多線(xiàn)程馁筐、網(wǎng)絡(luò)異步處理或者Core開(kāi)頭的各種框架等等)涂召。這些內(nèi)容十分重要,但是可能現(xiàn)在一般的iOS開(kāi)發(fā)者或多或少都在這些問(wèn)題上存在薄弱敏沉。在這里我整理了一份面向于較高層級(jí)的iOS開(kāi)發(fā)者的面試題目的問(wèn)題清單果正,列出了十個(gè)應(yīng)聘Leader級(jí)別的高級(jí)Cocoa/CocoaTouch開(kāi)發(fā)工程師所應(yīng)該掌握和理解的技術(shù)。這份列表沒(méi)有提供標(biāo)準(zhǔn)答案盟迟,因?yàn)檫@些問(wèn)題本身就沒(méi)有標(biāo)準(zhǔn)答案秋泳。隨每個(gè)人對(duì)這些內(nèi)容的認(rèn)識(shí)的不同和理解的差異,可以有不一樣的答案攒菠。但是最基本地迫皱,如果面對(duì)的是一名資深的Cocoa開(kāi)發(fā)者,至少期望能得到的答案都是“接觸過(guò)”辖众,并且能結(jié)合自己的經(jīng)驗(yàn)說(shuō)個(gè)七七八八卓起,達(dá)到互相能明白意圖和方法的地步。能夠在其中兩三個(gè)領(lǐng)域有不錯(cuò)的見(jiàn)解和具體的闡述的話(huà)凹炸,那是更好戏阅。這種對(duì)于知識(shí)覆蓋面和深度的考察很能真實(shí)反映出開(kāi)發(fā)者的技術(shù)水平。如果清單里的很大部分內(nèi)容都是完全沒(méi)接觸過(guò)和沒(méi)聽(tīng)過(guò)的話(huà)啤它,那可能距離資深Cocoa開(kāi)發(fā)這樣一個(gè)階段還尚有距離了奕筐。

那么,面試開(kāi)始变骡。

  1. 你使用過(guò)Objective-C的運(yùn)行時(shí)編程(Runtime Programming)么离赫?如果使用過(guò),你用它做了什么塌碌?你還能記得你所使用的相關(guān)的頭文件或者某些方法的名稱(chēng)嗎渊胸?
  2. 你實(shí)現(xiàn)過(guò)多線(xiàn)程的Core Data么?NSPersistentStoreCoordinator台妆,NSManagedObjectContext和NSManagedObject中的哪些需要在線(xiàn)程中創(chuàng)建或者傳遞蹬刷?你是用什么樣的策略來(lái)實(shí)現(xiàn)的瓢捉?
  3. Core開(kāi)頭的系列的內(nèi)容。是否使用過(guò)CoreAnimation和CoreGraphics办成。UI框架和CA泡态,CG框架的聯(lián)系是什么?分別用CA和CG做過(guò)些什么動(dòng)畫(huà)或者圖像上的內(nèi)容迂卢。(有需要的話(huà)還可以涉及Quartz的一些內(nèi)容)
  4. 是否使用過(guò)CoreText或者CoreImage等某弦?如果使用過(guò),請(qǐng)談?wù)勀闶褂肅oreText或者CoreImage的體驗(yàn)而克。
  5. NSNotification和KVO的區(qū)別和用法是什么靶壮?什么時(shí)候應(yīng)該使用通知,什么時(shí)候應(yīng)該使用KVO员萍,它們的實(shí)現(xiàn)上有什么區(qū)別嗎腾降?如果用protocol和delegate(或者delegate的Array)來(lái)實(shí)現(xiàn)類(lèi)似的功能可能嗎?如果可能碎绎,會(huì)有什么潛在的問(wèn)題螃壤?如果不能,為什么筋帖?(雖然protocol和delegate這種東西面試已經(jīng)面爛了...)
  6. 你用過(guò)NSOperationQueue么奸晴?如果用過(guò)或者了解的話(huà),你為什么要使用NSOperationQueue日麸,實(shí)現(xiàn)了什么寄啼?請(qǐng)描述它和GCD的區(qū)別和類(lèi)似的地方(提示:可以從兩者的實(shí)現(xiàn)機(jī)制和適用范圍來(lái)描述)。
  7. 既然提到GCD代箭,那么問(wèn)一下在使用GCD以及block時(shí)要注意些什么墩划?它們兩是一回事兒么?block在ARC中和傳統(tǒng)的MRC中的行為和用法有沒(méi)有什么區(qū)別嗡综,需要注意些什么乙帮?
  8. 您是否做過(guò)異步的網(wǎng)絡(luò)處理和通訊方面的工作?如果有蛤高,能具體介紹一些實(shí)現(xiàn)策略么?
  9. 對(duì)于Objective-C碑幅,你認(rèn)為它最大的優(yōu)點(diǎn)和最大的不足是什么戴陡?對(duì)于不足之處,現(xiàn)在有沒(méi)有可用的方法繞過(guò)這些不足來(lái)實(shí)現(xiàn)需求沟涨。如果可以的話(huà)恤批,你有沒(méi)有考慮或者實(shí)踐過(guò)重新實(shí)現(xiàn)OC的一些功能,如果有裹赴,具體會(huì)如何做喜庞?
  10. 你實(shí)現(xiàn)過(guò)一個(gè)框架或者庫(kù)以供別人使用么诀浪?如果有,請(qǐng)談一談構(gòu)建框架或者庫(kù)時(shí)候的經(jīng)驗(yàn)延都;如果沒(méi)有雷猪,請(qǐng)?jiān)O(shè)想和設(shè)計(jì)框架的public的API,并指出大概需要如何做晰房、需要注意一些什么方面求摇,來(lái)使別人容易地使用你的框架。
    以上10個(gè)問(wèn)題對(duì)于初級(jí)或者剛接觸iOS的開(kāi)發(fā)者來(lái)說(shuō)殊者,肯定是過(guò)于難了与境。想要答出全部問(wèn)題,可能需要至少兩到三年的Cocoa/CocoaTouch開(kāi)發(fā)經(jīng)驗(yàn)猖吴。而如果想要有所見(jiàn)地的回答摔刁,可能需要更長(zhǎng)的時(shí)間和經(jīng)驗(yàn)。這些問(wèn)題對(duì)于技術(shù)的積累會(huì)是一個(gè)很好的考察海蔽,因?yàn)槿绻麤](méi)有對(duì)這些問(wèn)題中涉及的內(nèi)容有過(guò)實(shí)際使用和體會(huì)的話(huà)共屈,是很難較完整和全面回答這些問(wèn)題的。同時(shí)准潭,因?yàn)檫@些問(wèn)題并不像ABCD的客觀(guān)題有標(biāo)準(zhǔn)答案趁俊,表現(xiàn)的是應(yīng)聘者的理解,所以提問(wèn)者也必須具備必要的材料或者知識(shí)刑然,以應(yīng)對(duì)可能的討論寺擂。

在為團(tuán)隊(duì)尋求高級(jí)別的開(kāi)發(fā)工程師或者Leader類(lèi)的職位時(shí),這些問(wèn)題的回答會(huì)是對(duì)應(yīng)聘者技術(shù)深度和廣度的一個(gè)有效的考察泼掠。同樣地怔软,如果你的團(tuán)隊(duì)在Cocoa/CocoaTouch上比較偏重,但是技術(shù)團(tuán)隊(duì)的No.1的工程師卻不能很好地回答這些問(wèn)題的話(huà)择镇,可能也會(huì)是需要檢討技術(shù)層的一個(gè)信號(hào)挡逼。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市腻豌,隨后出現(xiàn)的幾起案子家坎,更是在濱河造成了極大的恐慌,老刑警劉巖吝梅,帶你破解...
    沈念sama閱讀 211,290評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件虱疏,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡苏携,警方通過(guò)查閱死者的電腦和手機(jī)做瞪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人装蓬,你說(shuō)我怎么就攤上這事著拭。” “怎么了牍帚?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,872評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵儡遮,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我履羞,道長(zhǎng)峦萎,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,415評(píng)論 1 283
  • 正文 為了忘掉前任忆首,我火速辦了婚禮爱榔,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘糙及。我一直安慰自己详幽,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布浸锨。 她就那樣靜靜地躺著唇聘,像睡著了一般。 火紅的嫁衣襯著肌膚如雪柱搜。 梳的紋絲不亂的頭發(fā)上迟郎,一...
    開(kāi)封第一講書(shū)人閱讀 49,784評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音聪蘸,去河邊找鬼宪肖。 笑死,一個(gè)胖子當(dāng)著我的面吹牛健爬,可吹牛的內(nèi)容都是我干的控乾。 我是一名探鬼主播,決...
    沈念sama閱讀 38,927評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼娜遵,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蜕衡!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起设拟,我...
    開(kāi)封第一講書(shū)人閱讀 37,691評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤慨仿,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后纳胧,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體镰吆,經(jīng)...
    沈念sama閱讀 44,137評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
  • 正文 我和宋清朗相戀三年躲雅,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了鼎姊。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片骡和。...
    茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡相赁,死狀恐怖相寇,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情钮科,我是刑警寧澤唤衫,帶...
    沈念sama閱讀 34,289評(píng)論 4 329
  • 正文 年R本政府宣布,位于F島的核電站绵脯,受9級(jí)特大地震影響佳励,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蛆挫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
  • 文/蒙蒙 一赃承、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧悴侵,春花似錦瞧剖、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至浇借,卻和暖如春捉撮,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背妇垢。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工巾遭, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人修己。 一個(gè)月前我還...
    沈念sama閱讀 46,316評(píng)論 2 360
  • 正文 我出身青樓恢总,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親睬愤。 傳聞我的和親對(duì)象是個(gè)殘疾皇子片仿,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

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

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,756評(píng)論 25 707
  • 1.Difference between shallow copy and deep copy? 淺復(fù)制和深復(fù)制的...
    用心在飛閱讀 990評(píng)論 0 9
  • 你的臀,潔白又性感尤辱。 我揮起手砂豌, “啪” 這聲音,動(dòng)聽(tīng)又迷人光督。
    御就屋閱讀 256評(píng)論 0 0
  • 心里通心的涼阳距,你們用不舍逼迫。誰(shuí)給你的底氣能么任性结借,誰(shuí)給你的底氣對(duì)我這么任性筐摘。你用你兒子的不舍逼迫你兒子...
    手工餃子閱讀 193評(píng)論 0 1
  • 首先要澄清一下,這個(gè)真的不是騰訊的廣告文,畢竟《保衛(wèi)蘿卜3》已經(jīng)上市有快一年了吧咖熟。 這個(gè)游戲去年剛出來(lái)的時(shí)候圃酵,身邊...
    TommyLau閱讀 512評(píng)論 1 0