iOS 工程師應該掌握哪些技能?

codecloud.net發表於2016-03-23

  iOS 工程師應該掌握哪些技能才算得上一位合格的iOS 工程師呢?

  Objective-C

  作業系統

  • iOS記憶體管理和調優
  • iOS的檔案系統和沙盒機制
  • iOS多執行緒程式設計(Thread,GCD,NSOperation)
  • iOS網路和伺服器程式設計(NSURLConnection,NSURLSession)
  • iOS系統的各種安全機制

  網路程式設計

  • iOS網路傳送機制調整和優化(NSURLSession)
  • Socket程式設計
  • 網路傳輸中的各種保障
  • 對傳輸協議的調整優化

  資料庫&持久化方案

  • 常規持久化方案(Keychain,NSUserDefaults,Sqlite,CoreData)
  • 資料庫的使用和設計(Sqlite)
  • 資料結構優化,Sql調優

  圖形影像程式設計

  • UIKit,Core Animation和Core Text的繪製
  • Core Graphics, Quartz 2D, Media Player, AV Foundation
  • OpenGL ES, GLKit, SpriteKit, SceneKit, Metal

  資料結構 & 演算法

  • 基本的演算法和資料結構(排序搜尋演算法, 陣列, 佇列)
  • 較複雜資料結構的靈活應用(二叉樹, 圖等)
  • 複雜的專項演算法(影像識別演算法, 拓撲定位等等)

  安全方案

  • 本地資料儲存安全(Keychain)
  • 授權和身份驗證
  • 傳輸安全(對稱, 非對稱, SSL)
  • App程式碼安全

  業務能力

  • 一般性業務功能需求分析及實現
  • 重要業務模組的需求分析及實現
  • 中小規模產品的架構,系統設計和實現
  • 大規模產品或產品線的架構,系統設計和實現
  • 平臺級產品的架構,系統設計和實現

相關文章