- iOS 工程师技能树
- Objective-C
- 操作系统
- 网络编程
- 数据库&持久化方案
- 图形图像编程
- 数据结构 & 算法
- 安全方案
- 业务能力
iOS 工程师技能树
http://segmentfault.com/a/1190000002946644
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代码安全
业务能力
- 一般性业务功能需求分析及实现
- 重要业务模块的需求分析及实现
- 中小规模产品的架构,系统设计和实现
- 大规模产品或产品线的架构,系统设计和实现
- 平台级产品的架构,系统设计和实现