iOS 工程師應該掌握哪些技能?
iOS 工程師應該掌握哪些技能才算得上一位合格的iOS 工程師呢?
Objective-C
- Objective-C語言基礎
- library,framework的製作
- Runtime 程式設計
- LLVM 原理和調優
作業系統
- 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程式碼安全
業務能力
- 一般性業務功能需求分析及實現
- 重要業務模組的需求分析及實現
- 中小規模產品的架構,系統設計和實現
- 大規模產品或產品線的架構,系統設計和實現
- 平臺級產品的架構,系統設計和實現
相關文章
- 做大資料工程師需要掌握哪些技能呢?大資料工程師
- 新時代的網路工程師需要掌握哪些技能工程師
- linux網路工程師需要掌握哪些技能?linux網路工程師技能分析Linux工程師
- 一名合格的前端開發工程師應該掌握的8個技能前端工程師
- 高階軟體測試工程師,需要掌握哪些技能工程師
- PHP程式設計師應該掌握的10項技能PHP程式設計師
- WEB開發者應該有哪些必備的技能?Web
- 轉行Java需要掌握哪些技能?Java
- 程式設計師需要掌握哪些IT技能程式設計師
- 程式設計師應該具備哪些必備技能程式設計師
- 熟練Java的程式設計師應該掌握的知識技能Java程式設計師
- 一個PHP程式設計師應該掌握的10項技能!【更新】PHP程式設計師
- 發展Linux運維需要掌握哪些技能?Linux運維
- 【IT運維】Linux運維需要掌握哪些技能?運維Linux
- 高階PHP工程師應該具備的一些技能PHP工程師
- 高階PHP工程師所應該具備一些技能PHP工程師
- 入門 IT 行業,該具備哪些技能?行業
- 網路安全的學習,都需要掌握哪些技能?
- 你知道入坑Linux需掌握哪些技能嗎?Linux
- 前端小白該如何學習?以及掌握哪些能力才能從事前端開發工程師前端工程師
- 大資料開發工程師需要掌握什麼技能?大資料工程師
- 0基礎入門 IT,該具備哪些技能?
- Python培訓分享學Python需要掌握哪些技能Python
- 0基礎入門Linux 運維,應該先掌握哪些知識?Linux運維
- Java全棧工程師需要掌握哪些技術Java全棧工程師
- 創業公司工程師應該掌握的可伸縮Web開發技術創業工程師Web
- 網路安全需要掌握哪些技能?網路安全怎麼學?
- 網路安全難學嗎?網路安全需要掌握哪些技能?
- 4.14你知道入坑Linux需掌握哪些技能嗎?Linux
- 短影片運營需要掌握哪些技能?新媒體入門
- 前端應該掌握的nginx知識前端Nginx
- 掌握11項技能,你就是優秀的前端開發工程師前端工程師
- 月薪3k的程式設計師實習生,應該具備哪些知識,技能?程式設計師
- 新媒體運營需要掌握哪些技能?新媒體入門
- web前端掌握哪些技能才能順利工作呢?不斷學習!Web前端
- 網路安全需要掌握哪些技能?網路安全入門學習
- 大資料時代,財經類媒體人需要掌握哪些技能大資料
- 作為一名Python初學者,究竟要掌握哪些技能?Python