文章轉(zhuǎn)自極分享? ? ??更多精彩內(nèi)容移步原文
論是對(duì)于公司還是開發(fā)者或設(shè)計(jì)師個(gè)人而言全景,面試都是一項(xiàng)耗時(shí)耗錢的項(xiàng)目耀石,本文從編程、設(shè)計(jì)爸黄、App Store等各個(gè)方面對(duì)iOS開發(fā)者及設(shè)計(jì)師在面試時(shí)可能會(huì)遇到的問(wèn)題進(jìn)行了篩選與匯總滞伟。
一方面揭鳞,能夠幫助HR在短時(shí)間內(nèi)獲取更多反饋信息,更好地甄選合適人選梆奈,而 iOS 開發(fā)者及設(shè)計(jì)師在尋找相關(guān)工作時(shí)野崇,也可作為參考,為面試做好萬(wàn)全準(zhǔn)備亩钟。
你昨天/這周學(xué)習(xí)了什么乓梨?
你為什么熱衷于軟件開發(fā)?
你對(duì)哪一種控制系統(tǒng)比較熟悉清酥?
是否參與過(guò)GitHub項(xiàng)目扶镀?
是否參與過(guò)GitHub或其他同類型網(wǎng)站的iOS開源項(xiàng)目?
請(qǐng)描述一下你的iOS應(yīng)用開發(fā)流程焰轻。
是否熟知CocoaPods狈惫?它是什么?如何運(yùn)行的鹦马?
請(qǐng)概括一下你對(duì)軟件授權(quán)的理解,及其對(duì)軟件開發(fā)的影響忆肾。
請(qǐng)概括一下你在構(gòu)建iOS應(yīng)用時(shí)的測(cè)試過(guò)程荸频。iOS應(yīng)用如何實(shí)現(xiàn)對(duì)其他語(yǔ)言、日期格式以及貨幣單位的支持客冈?
請(qǐng)描述一下Instruments及其作用旭从。
請(qǐng)解釋一下Handoff是什么,并簡(jiǎn)述它是如何實(shí)現(xiàn)iOS场仲、Mac/網(wǎng)頁(yè)應(yīng)用互通的和悦。
iCloud包含了哪些技術(shù)與服務(wù)?
iOS擴(kuò)展是指渠缕?能否列舉一些熱門或常見的范例鸽素?
HealthKit是什么?
HomeKit是什么亦鳞?
Apple Pay是什么馍忽?能否描述一下如何在應(yīng)用中使用Apple Pay?
請(qǐng)解釋一下iOS應(yīng)用沙盒機(jī)制燕差。
VoiceOver是什么遭笋?請(qǐng)舉例解釋一下iOS中的輔助功能(Accessibility)。開發(fā)者如何使用這些功能徒探?
iOS應(yīng)用是如何實(shí)現(xiàn)后臺(tái)多任務(wù)處理(Multitasking)的瓦呼?
Game Center針對(duì)iOS游戲有哪些功能?
iBeacons是什么测暗?
Cocoa/Cocoa Touch是什么央串?
請(qǐng)概括一下Core Audio磨澡,Core Data以及Core Location各是什么。它們對(duì)iOS應(yīng)用有何意義蹋辅?
請(qǐng)描述SpriteKit和SceneKit的作用钱贯。
Metal是什么?
響應(yīng)鏈(Responder Chain)是什么侦另?它是如何發(fā)揮作用的秩命?
按鈕和其他控制方式對(duì)哪些操作做出回應(yīng)?
AppDelegate扮演著什么樣的角色褒傅?
請(qǐng)解釋一下NSUserDefaults弃锐。就你而言,你會(huì)如何在磁盤中對(duì)數(shù)組對(duì)象進(jìn)行序列化殿托?
你會(huì)如何儲(chǔ)存用戶的認(rèn)證信息霹菊?
請(qǐng)問(wèn)何為Keychain服務(wù)?
為什么移動(dòng)設(shè)備上的緩存和壓縮是不可或缺的支竹?
請(qǐng)解釋一下~/Documents旋廷,~/Library和~/tmp。 iOS中的~屬于什么目錄礼搁?
AirPlay是如何運(yùn)行的饶碘?換做是你,你會(huì)如何通過(guò)編程提高應(yīng)用的實(shí)用性以及演示效果馒吴?
傳感器扎运,IO以及WiFi、撥號(hào)等連接方式如何在iOS平臺(tái)上運(yùn)作饮戳?它們有何利用價(jià)值豪治?請(qǐng)扼要地談?wù)勀愕挠^點(diǎn)。
iPad 2扯罐,iPad mini 1-3负拟,iPad Retina,iPad Air 2篮赢,iPhone 5齿椅、5S、6以及6+在硬件性能方面有何差異启泣?這對(duì)注重性能的應(yīng)用有何限制涣脚?
Cocoa Touch包含什么?不包含什么寥茫?
為什么Cocoa Touch的類名稱是以兩個(gè)大寫字母開頭的遣蚀?
Swift和Objective-C分別是什么??jī)烧呦啾扔泻尾煌帲钟泻温?lián)系芭梯?
為什么Optional在Swift語(yǔ)言中非常重要险耀?
請(qǐng)解釋一下NSError。在Swift中玖喘,什么情況下能使用NSError 甩牺,什么情況下不能?
請(qǐng)說(shuō)明如何使用Instancetype及其重要性累奈。
在Swift中贬派,什么時(shí)候該用let,什么時(shí)候該用var澎媒?
為什么map函數(shù)必不可少搞乏?該在什么情況下使用它?
你會(huì)選擇什么工具來(lái)追蹤Bug戒努?
如果在Cocoa中發(fā)現(xiàn)一個(gè)Bug请敦,你會(huì)如何處理?
如果應(yīng)用的新版本出現(xiàn)了Regression的情況储玫,該如何補(bǔ)救侍筛?如何防止用戶在使用過(guò)程中遇到新的Bug?
Objective-C的類是怎么執(zhí)行的撒穷?Objective-C Runtime是如何實(shí)現(xiàn)的勾笆?
iOS是如何提高安全性,保護(hù)用戶隱私信息的桥滨?
應(yīng)用可以下載并即刻顯示數(shù)據(jù)。如何根據(jù)MVC來(lái)判斷下載的最佳位置弛车?
MVC對(duì)代碼庫(kù)(Codebase)的設(shè)計(jì)有何影響齐媒?
Controller Life-Cycle以及View Life-cycle分別有哪些調(diào)試方法?
iOS使用的是哪些設(shè)計(jì)模式(Design Patterns)纷跛?你的代碼庫(kù)使用的是哪些設(shè)計(jì)模式喻括?
iOS提供哪些線程?如何充分利用這些線程贫奠?
請(qǐng)簡(jiǎn)要描述一下UIScrollView的執(zhí)行過(guò)程唬血。它是如何響應(yīng)手勢(shì)識(shí)別(Gesture Recognizer)、多點(diǎn)觸控(Multi-Touch)和Run Loop的唤崭?
你認(rèn)為iOS需要添加或改進(jìn)哪些API拷恨?
iPhone5、6谢肾、6+以及iPad Air 2的屏幕分辨率分別是多少腕侄?
分辨率的計(jì)算單位是什么?
請(qǐng)解釋一下Interface Builder的作用以及NIB文件的概念。
iOS UI的圖像儲(chǔ)存類型是什么冕杠?
請(qǐng)描述一下Storyboard和標(biāo)準(zhǔn)NIB文件的差別微姊。
設(shè)備狀態(tài)欄(Device Status Bar)是什么?高度如何分预?是否透明兢交?在手機(jī)通話或者導(dǎo)航狀態(tài)下,它是如何顯示的笼痹?
導(dǎo)航欄(Navigation Bar)是什么配喳?能否拿出你的iPhone,指出你下載的哪些應(yīng)用運(yùn)用了導(dǎo)航欄与倡?
選項(xiàng)卡(Tab Bar)和工具欄(Toolbar)分別是什么界逛??jī)烧咧g有何共同點(diǎn)和不同點(diǎn)?
表視圖(Table View)是什么纺座?集合視圖(Collection View)又是什么息拜?
什么時(shí)候用“彈出(Popover)”屬性最為合適?
Split-view Controller是什么净响?
選取器視圖(Picker View)適合存放哪類內(nèi)容少欺?
應(yīng)該在什么情況下使用標(biāo)簽、文本域和文本視圖馋贤?
分段控件(Segmented Control)的作用是什么赞别?
模態(tài)視圖(Modal View)是什么?
iOS通知屬于什么類型配乓?
iOS應(yīng)用圖標(biāo)是指什么仿滔?請(qǐng)盡可能詳細(xì)地描述一下。
最小尺寸和最大尺寸的應(yīng)用圖標(biāo)分別是什么樣子的犹芹?
應(yīng)用圖標(biāo)能否包含透明的部分崎页?
Newsstand的圖標(biāo)與常規(guī)應(yīng)用有何不同?
請(qǐng)解釋一下啟動(dòng)畫面(Launch Images)腰埂。
自動(dòng)布局(Auto Layout)的作用是什么飒焦?請(qǐng)概括一下它是如何運(yùn)行的。
設(shè)計(jì)軟件時(shí)為什么要加上動(dòng)畫屿笼?
請(qǐng)描述一下軟件設(shè)計(jì)中的交互和Feedback有什么作用牺荠。
設(shè)計(jì)iPhone和iPad應(yīng)用時(shí),應(yīng)分別考慮哪些因素驴一?
請(qǐng)描述一下原型設(shè)計(jì)對(duì)于軟件開發(fā)的意義休雌。其作用是什么?
應(yīng)用內(nèi)購(gòu)買(In-App Purchases)是怎么回事肝断?IAP能夠?yàn)橛脩魩?lái)哪些新體驗(yàn)挑辆?
你是否在App Store上發(fā)布過(guò)應(yīng)用例朱?能否概括一下過(guò)程?
iTunes Connect是什么鱼蝉?
Provisioning Profiles是指洒嗤?
App ID是什么?
iOS的開發(fā)和發(fā)布簽名證書有何異同魁亦?
如何使用TestFlight渔隶?通過(guò)Ad-hoc發(fā)布應(yīng)用的話,該如何使用UUID洁奈?
應(yīng)何時(shí)驗(yàn)證購(gòu)買收據(jù)间唉?
發(fā)布iAds(蘋果平臺(tái)廣告)有哪些要求介评?
最近有沒(méi)有開發(fā)什么好玩的東西托猩?你最引以為豪的作品是什么?
談一談你常用的開發(fā)工具都有哪些優(yōu)勢(shì)汉额?
你最敬佩的獨(dú)立Mac或者iOS應(yīng)用開發(fā)者是誰(shuí)印叁?
最喜歡什么項(xiàng)目被冒?哪種類型的?
你覺(jué)得Xcode有哪些需要改進(jìn)的地方轮蜕?
iOS上你最喜歡哪些API昨悼?
是否有最中意的錯(cuò)誤報(bào)告?
你最愛(ài)以哪種方式來(lái)檢驗(yàn)一項(xiàng)新技術(shù)是否好用跃洛?
為什么詞典被稱作Dictionaries率触,而不是HashTable或HashMap?