該技能樹匯集了iOS開發(fā)相關(guān)的技能點,詳情可以在這個頁面查看。
誰會用到?
- 想成為iOS開發(fā)人員的任何人
- 想成長為專家的iOS開發(fā)人員
- 正在為面試做準(zhǔn)備,需要溫習(xí)知識的iOS開發(fā)人員
- 為面試iOS開發(fā)人員編寫題目的人
為什么不列出面試的問題和答案?
因為這些問題通常都有現(xiàn)成的答案。有現(xiàn)成的答案意味著這將成為唯一正確的答案(取決于回答的人的主觀判斷)這將導(dǎo)致新人只是記住答案而不是進(jìn)行深入的探究,通曉完整的iOS平臺。
記住答案會讓你相信你知道它,但實際上,你不能把它應(yīng)用到你的工作中去解決問題和形成長久的技能。
但是,對新手來說,有這樣的一份問答總比什么都沒有要好,因為遵循現(xiàn)成的規(guī)則或者建議總比什么都不知道要好。
為什么要做這些?
要成為一名優(yōu)秀的ios開發(fā)人員,你應(yīng)該在兩個主要方面提高你的技能:problem-solving 和 commercial programming。
Problem-solving是指運(yùn)用所學(xué)的專業(yè)知識(計算機(jī)科學(xué))解決時間和資源限制下的邏輯問題。這是將知識用于商業(yè)變成的語言或者框架中任何實際解決方案的基礎(chǔ)。此外,對“商業(yè)”問題的批判性思考和解決問題的方法也是必要的。

幾乎所有的雇主都優(yōu)先考慮解決問題的技巧。
Commercial programming指的是對實用的知識的運(yùn)用(基于經(jīng)驗),它比計算機(jī)科學(xué)更為廣泛,但通常更容易理解和運(yùn)用。這個領(lǐng)域通常由適用于特定平臺的技能組成(iOS也在其中)。實踐技能往往被認(rèn)為更有趣,因為它們能解決實際事情。
如果你不能為企業(yè)提供服務(wù),雇主就不會雇傭你。
最后,也許也是最重要的:你必須是一個正直的人,這樣其他人才愿意和你一起工作,而不是和你作對。
有人對它進(jìn)行更新和維護(hù)嗎?
我們(iOS community)將會持續(xù)地進(jìn)行更新。添加另一個知識點或者研究方向是非常容易的,只需要Git的基本知識。
誰來決定一個知識點是否是必須的?
任何人都可以在GitHub repo提出一個討論來探討任何知識的的狀態(tài)。創(chuàng)建者將根據(jù)提供的論據(jù)(或是某個人提供的意見)做出決定。
還有什么煩惱的呢?
當(dāng)你被水平相當(dāng)?shù)娜怂鼑隳芙鉀Q所有你討厭/喜歡的問題。
(翻譯自 iOS Developer Roadmap)
如何使用?
1.找一個你想學(xué)習(xí)的話題。
2.轉(zhuǎn)到相應(yīng)的資源部分。
3.學(xué)習(xí)直到你能自信地向你的貓解釋這個話題。
4.(可選)勾選主題旁邊的復(fù)選框。
5.轉(zhuǎn)到步驟1。
Essential topics是對理解iOS開發(fā)有重大貢獻(xiàn)的主題。因此,首先研究他們是一個好主意,因為他們經(jīng)常在面試中遇到。
如果你還沒有做任何iOS開發(fā),從入門部分開始。