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代码安全

  业务能力

  • 一般性业务功能需求分析及实现

  • 重要业务模块的需求分析及实现

  • 中小规模产品的架构,系统设计和实现

  • 大规模产品或产品线的架构,系统设计和实现

  • 平台级产品的架构,系统设计和实现

代码技巧

转载请关注公众号:代码技巧 回复:授权

本文链接地址:https://www.oudahe.com/p/130/