看到一篇很好的關(guān)于檢查自己iOS開(kāi)發(fā)能力的文章扁眯,所以想嘗試著翻譯成中文哆致。英文水平有限涩维,有錯(cuò)誤的地方歡迎指出删掀。
[原文地址] ( "What skills would I need for a job as an iOS developer ? " http://roadfiresoftware.com/2014/04/how-to-become-a-professional-ios-developer/ )
你應(yīng)該能夠從頭開(kāi)始編寫(xiě)一個(gè)iOS應(yīng)用
- 擁有用images翔冀,lables,text views披泪,buttons纤子,pickers以及其他控件完成的用戶界面-通過(guò)自定義代碼,使用xibs款票,使用Storyboards等方式來(lái)定義(同時(shí)了解三種方式是額外加分項(xiàng))控硼。
- 使用Auto Layout確保views在各種屏幕尺寸或者設(shè)備方向上都呆在它們?cè)摯舻奈恢蒙稀?/li>
- 通過(guò)用buttons,switches艾少,sliders卡乾,pickers,table views,和其他控件來(lái)處理用戶交互姆钉。
- 擁有多種導(dǎo)航控制器類型说订,如tab bar controllers抄瓦,navigation controllers 和 page view controllers 以及它們的混合體。
- 展示一個(gè)用戶能夠關(guān)閉的模態(tài)視圖(modal view)
- 展示提醒(alerts)和動(dòng)作表(action sheets)陶冷,并且處理當(dāng)中的輸出钙姊。
- 從text views 中接收用戶的輸入。
- 在適當(dāng)?shù)臅r(shí)機(jī)下通過(guò)代碼關(guān)閉鍵盤(pán)
- 擁有一個(gè)滾動(dòng)流暢的scroll view 埂伦∩范睿可以是一個(gè)一次滾動(dòng)一頁(yè)的scroll view 或者是一次兩頁(yè)。例如沾谜,你有一個(gè)scroll view 水平滾動(dòng)時(shí)一次一頁(yè)但是可以平滑的垂直滾動(dòng)膊毁。 注:這一條不是很明白-0-
- 創(chuàng)建異步的網(wǎng)絡(luò)請(qǐng)求(network request)來(lái)發(fā)送和接收來(lái)自API的數(shù)據(jù)。
- 使用自定義的模型對(duì)象(model object)來(lái)表示你的應(yīng)用中的基本數(shù)據(jù)類型基跑。
- 解析 JSON并且反序列化(deserializes)到模型對(duì)象婚温。
- 序列化模型對(duì)象到 JSON并且發(fā)送給目標(biāo)API。
- 擁有一個(gè)表視圖來(lái)展示從網(wǎng)絡(luò)請(qǐng)求中獲得的一系列數(shù)據(jù)媳否。
- 在一個(gè)web view中顯示一個(gè)網(wǎng)頁(yè)頁(yè)面栅螟。
- 在NSUserDefaults中存儲(chǔ)本地?cái)?shù)據(jù)
- 串聯(lián),計(jì)算和操作strings篱竭,number力图,dates來(lái)合適的展示它們
你應(yīng)該能夠探討:
- 用戶界面指南(the Human Interface Guidelines)以及優(yōu)秀的UI是怎么構(gòu)成的?
- 在你的處理中各類控件是什么(角色)掺逼,以及什么時(shí)候使用它們才合理吃媒。
- 在 Xcode中使用調(diào)試器來(lái)跟蹤問(wèn)題。
- 視圖控制器生命周期(the UIViewController lifecycle)吕喘,各種被調(diào)用的方法赘那,它們調(diào)用的時(shí)間,以及該用它們做些什么工作氯质。
- 程序生命周期(the application lifecycle)漓概,各種被調(diào)用的方法,它們調(diào)用的時(shí)間病梢,以及該用它們做些什么工作胃珍。
- 代理(delegation)的概念,iOS API中應(yīng)用到代理的一些例子蜓陌,并且你應(yīng)該能夠創(chuàng)建并且使用你自己的代理API觅彰。