iOS 核心框架
- CoreAnimation
- CoreGraphics
- CoreLocation
- AVFoundation
- Foundation
iOS核心机制
- UITableView 重用
- ObjC内存管理;自动释放池,ARC如何实现
- runloop
- runtime
- Block的定义、特性、内存区域、如何实现
- Responder Chain
- NSOperation
- GCD
数据结构
- 8大排序算法
- 二叉树实现
- 二分查找实现
面向对象编程
-
封装、继承、多态
-
设计模式6个原则
-
设计一个类的功能,如何划分粒度(单一职责)
-
接口隔离。
-
如果有一个鸟类,有飞的动作,一个鸵鸟继承它是合适的吗(里氏替换)
-
类之间的依赖如何依赖偶合度最小(依赖倒转)
高层依赖低层,低层不能依赖高层。依赖接口,不能依赖具体的类。 -
如果A要调用C函数,但C是B的成员类,应该如何设计?(迪米特)
-
如何设计类,能做到只增加代码,而不修改代码,有哪些经验(开放封闭)
通过设计模式解决。
计算机技术
- 计算机网络: TCP/IP、HTTPCDN、SPDY
- 计算机安全: RSA、AES、DES
- 操作系统:线程、进程、堆栈、死锁、调度算法
iOS新特性、新技术
- iOS7 UIDynamic、SpritKit、新布局、扁平化
- iOS8 应用程序扩展、HealthKit、SceneKit、CoreLocation、TouchID、PhotoKit
- iOS9
- Apple Watch
- 第三方库:SDWebImage、AFNetwork、JSONKit、wax
- swift