iOS 面試題匯總 答案后續(xù)補上

無論是對于公司還是開發(fā)者或設(shè)計師個人而言,面試都是一項耗時耗錢的項目,本文作者Cameron Banga從編程郊愧、設(shè)計、App Store等各個方面對iOS開發(fā)者及設(shè)計師在面試時可能會遇到的問題進行了篩選與匯總坏快。一方面,能夠幫助HR在短時間內(nèi)獲取更多反饋信息憎夷,更好地甄選合適人選莽鸿,而iOS開發(fā)者及設(shè)計師在尋找相關(guān)工作時,也可作為參考拾给,為面試做好萬全準備富拗。



常見問題

你昨天/這周學(xué)習(xí)了什么?
你為什么熱衷于軟件開發(fā)鸣戴?
你對哪一種控制系統(tǒng)比較熟悉啃沪?
是否參與過GitHub項目?
是否參與過GitHub或其他同類型網(wǎng)站的iOS開源項目窄锅?
請描述一下你的iOS應(yīng)用開發(fā)流程创千。
是否熟知CocoaPods缰雇?它是什么?如何運行的追驴?
請概括一下你對軟件授權(quán)的理解械哟,及其對軟件開發(fā)的影響。
請概括一下你在構(gòu)建iOS應(yīng)用時的測試過程殿雪。iOS應(yīng)用如何實現(xiàn)對其他語言暇咆、日期格式以及貨幣單位的支持?
請描述一下Instruments及其作用丙曙。

關(guān)于iOS技術(shù)

請解釋一下Handoff是什么爸业,并簡述它是如何實現(xiàn)iOS、Mac/網(wǎng)頁應(yīng)用互通的亏镰。
答:Handoff是蘋果推出的一項功能扯旷,當(dāng)你的iPhone、mac索抓、ipad登陸同一個iCloud賬戶時钧忽,你在手機上打開網(wǎng)頁會實時在mac上看到,由于其是基于藍牙4.0來實現(xiàn)的逼肯,所以要手機和電腦相互靠近才可以耸黑。當(dāng)然要使用的話,iOS要8.0以上且mac要10.10以上篮幢。
iCloud包含了哪些技術(shù)與服務(wù)大刊?
答:iCloud 其實就是云服務(wù),蘋果為用戶提供了一個私有云空間洲拇,方便用戶在不同的蘋果設(shè)備之間共享個人數(shù)據(jù)奈揍。
iOS擴展是指曲尸?能否列舉一些熱門或常見的范例赋续?
答:擴展是iOS8中引入的一個非常重要的新特性,擴展讓app之間的數(shù)據(jù)交互稱為可能另患,用戶可以在app中使用其他應(yīng)用提供的功能纽乱,而無需離開當(dāng)前的應(yīng)用。引入擴展之后昆箕,app可以與擴展進行數(shù)據(jù)交換鸦列,基于安全和性能的考慮,每一個擴展運行在一個單獨的進程中鹏倘,擁有自己的bundle薯嗤,bundle 的后綴名是.appex。擴展bundle必須包含在一個普通應(yīng)用的bundle內(nèi)部纤泵。iOS8有6個支持擴展的系統(tǒng)區(qū)域骆姐,分別是Today、Share、Action玻褪、Photo Editing肉渴、Storage Provider、Custom Keyboard带射。
HealthKit是什么同规?
答:HealthKit是一個框架,應(yīng)用可以使用它來分享健康和健身數(shù)據(jù)窟社。HealthKit管理從不同來源獲得的數(shù)據(jù)券勺,并根據(jù)用戶的偏好設(shè)置,自動將不同來源的所有數(shù)據(jù)合并起來桥爽。
HomeKit是什么朱灿?
答:是蘋果發(fā)布的智能家居平臺。
Apple Pay是什么能否描述一下如何在應(yīng)用中使用Apple Pay钠四?
請解釋一下iOS應(yīng)用沙盒機制盗扒。
VoiceOver是什么?請舉例解釋一下iOS中的輔助功能(Accessibility)缀去。開發(fā)者如何使用這些功能侣灶?
iOS應(yīng)用是如何實現(xiàn)后臺多任務(wù)處理(Multitasking)的?
Game Center針對iOS游戲有哪些功能缕碎?
iBeacons是什么褥影?
Cocoa/Cocoa Touch是什么?
請概括一下Core Audio咏雌,Core Data以及Core Location各是什么凡怎。它們對iOS應(yīng)用有何意義?
請描述SpriteKit和SceneKit的作用赊抖。
Metal是什么统倒?
響應(yīng)鏈(Responder Chain)是什么?它是如何發(fā)揮作用的氛雪?
按鈕和其他控制方式對哪些操作做出回應(yīng)房匆?
AppDelegate扮演著什么樣的角色?
請解釋一下NSUserDefaults报亩。就你而言浴鸿,你會如何在磁盤中對數(shù)組對象進行序列化?
你會如何儲存用戶的認證信息弦追?
請問何為Keychain服務(wù)岳链?
為什么移動設(shè)備上的緩存和壓縮是不可或缺的?
請解釋一下/Documents劲件,/Library和~/tmp掸哑。 iOS中的~屬于什么目錄左胞?
AirPlay是如何運行的?換做是你举户,你會如何通過編程提高應(yīng)用的實用性以及演示效果烤宙?
傳感器,IO以及WiFi俭嘁、撥號等連接方式如何在iOS平臺上運作躺枕?它們有何利用價值?請扼要地談?wù)勀愕挠^點供填。
iPad 2拐云,iPad mini 1-3,iPad Retina近她,iPad Air 2叉瘩,iPhone 5、5S粘捎、6以及6+在硬件性能方面有何差異薇缅?這對注重性能的應(yīng)用有何限制?

關(guān)于編程

Cocoa Touch包含什么攒磨?不包含什么泳桦?
為什么Cocoa Touch的類名稱是以兩個大寫字母開頭的?
Swift和Objective-C分別是什么娩缰?兩者相比有何不同之處灸撰,又有何聯(lián)系?
為什么Optional在Swift語言中非常重要拼坎?
請解釋一下NSError浮毯。在Swift中,什么情況下能使用NSError 泰鸡,什么情況下不能债蓝?
請說明如何使用Instancetype及其重要性。
在Swift中鸟顺,什么時候該用let惦蚊,什么時候該用var器虾?
為什么map函數(shù)必不可少讯嫂?該在什么情況下使用它?
你會選擇什么工具來追蹤Bug兆沙?
如果在Cocoa中發(fā)現(xiàn)一個Bug欧芽,你會如何處理?
如果應(yīng)用的新版本出現(xiàn)了Regression的情況葛圃,該如何補救千扔?如何防止用戶在使用過程中遇到新的Bug憎妙?
Objective-C的類是怎么執(zhí)行的?Objective-C Runtime是如何實現(xiàn)的曲楚?
iOS是如何提高安全性厘唾,保護用戶隱私信息的?
應(yīng)用可以下載并即刻顯示數(shù)據(jù)龙誊。如何根據(jù)MVC來判斷下載的最佳位置抚垃?
MVC對代碼庫(Codebase)的設(shè)計有何影響?
Controller Life-Cycle以及View Life-cycle分別有哪些調(diào)試方法趟大?
iOS使用的是哪些設(shè)計模式(Design Patterns)鹤树?你的代碼庫使用的是哪些設(shè)計模式?
iOS提供哪些線程逊朽?如何充分利用這些線程罕伯?
請簡要描述一下UIScrollView的執(zhí)行過程。它是如何響應(yīng)手勢識別(Gesture Recognizer)叽讳、多點觸控(Multi-Touch)和Run Loop的追他?
你認為iOS需要添加或改進哪些API?

關(guān)于界面

iPhone5岛蚤、6湿酸、6+以及iPad Air 2的屏幕分辨率分別是多少?
分辨率的計算單位是什么灭美?
請解釋一下Interface Builder的作用以及NIB文件的概念推溃。
iOS UI的圖像儲存類型是什么?
請描述一下Storyboard和標準NIB文件的差別届腐。
設(shè)備狀態(tài)欄(Device Status Bar)是什么铁坎?高度如何?是否透明犁苏?在手機通話或者導(dǎo)航狀態(tài)下硬萍,它是如何顯示的?
導(dǎo)航欄(Navigation Bar)是什么围详?能否拿出你的iPhone朴乖,指出你下載的哪些應(yīng)用運用了導(dǎo)航欄?
選項卡(Tab Bar)和工具欄(Toolbar)分別是什么助赞?兩者之間有何共同點和不同點买羞?
表視圖(Table View)是什么?集合視圖(Collection View)又是什么雹食?
什么時候用“彈出(Popover)”屬性最為合適畜普?
Split-view Controller是什么?
選取器視圖(Picker View)適合存放哪類內(nèi)容群叶?
應(yīng)該在什么情況下使用標簽吃挑、文本域和文本視圖钝荡?
分段控件(Segmented Control)的作用是什么?
模態(tài)視圖(Modal View)是什么舶衬?
iOS通知屬于什么類型埠通?

關(guān)于設(shè)計

iOS應(yīng)用圖標是指什么?請盡可能詳細地描述一下逛犹。
最小尺寸和最大尺寸的應(yīng)用圖標分別是什么樣子的植阴?
應(yīng)用圖標能否包含透明的部分?
Newsstand的圖標與常規(guī)應(yīng)用有何不同圾浅?
請解釋一下啟動畫面(Launch Images)掠手。
自動布局(Auto Layout)的作用是什么?請概括一下它是如何運行的狸捕。
設(shè)計軟件時為什么要加上動畫喷鸽?
請描述一下軟件設(shè)計中的交互和Feedback有什么作用。
設(shè)計iPhone和iPad應(yīng)用時灸拍,應(yīng)分別考慮哪些因素做祝?
請描述一下原型設(shè)計對于軟件開發(fā)的意義。其作用是什么鸡岗?

關(guān)于App Store

應(yīng)用內(nèi)購買(In-App Purchases)是怎么回事混槐?IAP能夠為用戶帶來哪些新體驗?
你是否在App Store上發(fā)布過應(yīng)用轩性?能否概括一下過程声登?
iTunes Connect是什么?
Provisioning Profiles是指揣苏?
App ID是什么悯嗓?
iOS的開發(fā)和發(fā)布簽名證書有何異同?
如何使用TestFlight卸察?通過Ad-hoc發(fā)布應(yīng)用的話脯厨,該如何使用UUID?
應(yīng)何時驗證購買收據(jù)坑质?
發(fā)布iAds(蘋果平臺廣告)有哪些要求合武?

趣味問答

最近有沒有開發(fā)什么好玩的東西?你最引以為豪的作品是什么涡扼?
談一談你常用的開發(fā)工具都有哪些優(yōu)勢稼跳?
你最敬佩的獨立Mac或者iOS應(yīng)用開發(fā)者是誰?
最喜歡什么項目壳澳?哪種類型的岂贩?
你覺得Xcode有哪些需要改進的地方茫经?
iOS上你最喜歡哪些API巷波?
是否有最中意的錯誤報告萎津?
你最愛以哪種方式來檢驗一項新技術(shù)是否好用?
為什么詞典被稱作Dictionaries抹镊,而不是HashTable或HashMap锉屈?

其他參考

iOS Dev Weekly(iOS開發(fā)周刊)
Accidental Tech Podcast
Debug Podcast
The Talk Show
NSHipster
KZBootstrap(一個方便iOS工程初始化的項目)
WWDC Videos
ASCII WWDC(文字版本,可搜索)
Pttrns(iOS手機App界面分享平臺)
Ray Wenderlich Tutorials(Ray Wenderlich教程)
iOS Version Stats(信息分享平臺)
iOS Human Interface Guidelines(iOS人機界面指南)
Black Pixel blog post on hiring iOS and Mac engineers(Black Pixel博客)
Macoscope guide to a technical interview( Macoscope技術(shù)面試指南)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末垮耳,一起剝皮案震驚了整個濱河市颈渊,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌终佛,老刑警劉巖俊嗽,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異铃彰,居然都是意外死亡绍豁,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進店門牙捉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來竹揍,“玉大人,你說我怎么就攤上這事邪铲》椅唬” “怎么了?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵带到,是天一觀的道長昧碉。 經(jīng)常有香客問我,道長揽惹,這世上最難降的妖魔是什么晌纫? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮永丝,結(jié)果婚禮上锹漱,老公的妹妹穿的比我還像新娘。我一直安慰自己慕嚷,他們只是感情好哥牍,可當(dāng)我...
    茶點故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著喝检,像睡著了一般嗅辣。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上挠说,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天澡谭,我揣著相機與錄音,去河邊找鬼损俭。 笑死蛙奖,一個胖子當(dāng)著我的面吹牛潘酗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播雁仲,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼仔夺,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了攒砖?” 一聲冷哼從身側(cè)響起缸兔,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎吹艇,沒想到半個月后惰蜜,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡受神,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年蝎抽,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片路克。...
    茶點故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡樟结,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出精算,到底是詐尸還是另有隱情瓢宦,我是刑警寧澤,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布灰羽,位于F島的核電站驮履,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏廉嚼。R本人自食惡果不足惜玫镐,卻給世界環(huán)境...
    茶點故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望怠噪。 院中可真熱鬧恐似,春花似錦、人聲如沸傍念。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽憋槐。三九已至双藕,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間阳仔,已是汗流浹背忧陪。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人嘶摊。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓延蟹,卻偏偏與公主長得像,于是被迫代替她去往敵國和親更卒。 傳聞我的和親對象是個殘疾皇子等孵,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,901評論 2 345

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

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,520評論 25 707
  • 非游戲類稚照,初級面試常見問題1.你昨天/這周學(xué)習(xí)了什么?坦白點說蹂空,學(xué)習(xí)筆試面試后發(fā)現(xiàn)自己知識點不足的地方2.你為什么...
    cj2527閱讀 822評論 0 0
  • JY36501閱讀 122評論 0 0
  • 此刻腦子有些亂,有一肚子的話卻不知該如何表達果录。 之前日記中一直在寫夢想與努力上枕,可今天我卻不敢說夢想與努力。一提到它...
    Catherine_龍貓閱讀 181評論 0 0
  • 異地戀,聽上去總是有點可憐無奈的返弹。 生病了除了電話那頭的多喝水锈玉,多喝熱水,吃藥打針輸液還是得一個人來义起,搬宿舍拉背,把自...
    七號的閱讀 307評論 0 1