Bo2SS

Bo2SS

1. 基礎篇(最佳學習路徑)

作者參考自己的親身經歷,和觀察到的、身邊優秀開發者的經歷,分享了從一個新人到專家的學習路徑,希望幫你少走一些彎路,快速成長。

iOS 開發者可分為四類

  1. 完全 0 基礎的開發者;
  2. 剛跨入 iOS 領域的開發者;
  3. 有一定 iOS 實際開發經驗的開發者;
  4. iOS 開發老手。

下面針對不同類型的開發者,聊聊不同的進階路徑吧~


先看看完全 0 基礎的學習資料:

  • 通過書籍來學習:《iOS 編程》最新版本,包括了開發語言、Cocoa 設計模式和控件使用、Xcode 技巧等基礎的方方面面。
  • 通過實例來學習:APPCODA 網站,裡面的每篇教程都非常簡單易懂,而且帶著你一步一步地動手編寫程序。

PS:對於小學生和初中生,可以參考知乎 | 12 歲如何入門 iOS 編程?的高贊回答。

不貪基礎知識#

基礎知識涉及面實在是太廣了,而且多偏理論,如果不實踐,要想掌握好可不是件簡單的事情。但也並不是說基礎就不重要了,必要的基礎一定要掌握好。那麼,對於 iOS 開發者來說,哪些基礎是在開始就需要好好學的呢?

剛跨入 iOS 領域的開發者又可以細分為三類,他們有不同的學習路徑:

  • 在校生:斯坦福大學 | App 開發課程,包含了開發一個 App 所需的最基礎的知識,涉及 MVC 架構、iOS 開發語言基礎知識、多點觸摸、動畫、ViewController 的生命周期、Scroll View、多線程、Auto Layout、拖拽、TableView、Collection View、Text Field、持續化存儲、彈窗、通知、整個 App 生命週期、Storyboards、Core Motion、攝像等內容;同步的中文字幕項目:GitHub
  • 剛參加工作的應屆生:Apple 官方開發手冊,實際工作中碰到所需要的知識,首翻這個手冊。官方的代碼示例都很規範,分類很清晰,內容全,大致可以分為 App Frameworks、圖形、App 服務、媒體、開發工具、系統等板塊。附:Apple 官方 iOS 開發指南(基於 Swift)
  • 從其他領域轉向 iOS 開發的老手:RayWenderlich 網站,裡面的每一個教程都有詳細的指導,以掌握具體的知識點,可以根據工作需要學習具體的類別。

掌握了一定的基礎知識後,如何繼續提升自己的 iOS 開發技能呢?

在實踐中積累#

對於工作實踐中涉及到的領域相關知識,一定要貪多,而且越多越好。

在實踐中積累,特別適合有幾年工作經驗的開發者

  • 時刻關注和你工作內容相關領域知識的發展動向,並全面掌握;
  • 及時進行整理和總結,多進行一些思考,問問自己為什麼這麼做,還有沒有更好的做法;
  • 最後進行輸出,聽聽他人的意見,多交流。

殊途同歸,深挖知識#

不管哪個領域,殊途同歸,底層知識都是最值得深挖、最需要持續學習的。

推薦:Michael Ash | The Complete Friday Q&A 書,裡面涉及的內容,會讓你了解更多內存、性能和系統內部的原理,他的博客你也可以逛逛。

最後,iOS 開發老手(紮實的 iOS 基礎 + 實踐經驗 + 工作成績)的進階路徑,應該是選擇一個方向持續地深入學習,學習方式可以是從頭實現一個技術雛型,比如:

  • LLVM 編譯器:實現一個簡單的編譯器或解釋器,可參考最小的 C 編譯器 OTCC(Obfuscated Tiny C Compiler)。
  • 數據庫:動手開發一個簡單的數據庫項目,可參考 Let’s Build a Simple Database 教程
  • 操作系統:學著從頭創建一個操作系統,可參考 os-tutorial 教程,帶你開發一個麻雀雖小五臟俱全的操作系統,包括系統啟動、中斷處理、屏幕輸出鍵盤輸入、basic libc、內存管理、文件存儲系統、簡單的 shell、用戶模式、文本編輯器、多進程和調度等,幫你更深刻地理解分頁、信號量、內存管理等知識。

除此之外,iOS 老手還可以使用已掌握的技術棧,觸類旁通地去接觸其他領域,拓寬自己的技術視野。比如,使用 加拿大團隊 | Perfect 可以讓 Swift 做伺服器的開發。

師父領進門,修行靠個人。好好梳理自己的知識體系,查漏補缺讓自己的知識更體系化吧!

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。