大家好,我是面试聊iOS的程序员。
从这篇文章开始,我将会和大家持续分享作为一个工作5年之后的iOS开发,在面试时一般都在聊什么。
换句话来讲,也就是在面试时我们一般都会被问到哪些问题。
抖音搜索 面试聊iOS 观看视频版
相关文章链接
面试聊iOS:内存管理
面试聊iOS:RunTime(一)
面试聊iOS:RunTime(二)
面试聊iOS:Block
面试聊iOS:多线程
人事面
- 求职原因(离职原因)
- 自我认知(能给公司带来什么帮助)
- 职业规划
- 期望薪资(很重要: -)
技术面(最重要)
1. 内存管理
- 引用计数
- MRC、ARC
- strong、weak、assign
- 深copy与浅copy
- atomic与nonatomic
- 内存泄漏
- 循环引用
2. RunTime
- id、instanceType
- isa指针(is a what?)
- 消息发送机制
- Method Swizzing(方法交换)
- Category、Extension
- KVC、KVO
- 归档解档(NSCoding)
3. Block
- Block原理(Block本质)
- Block的类型
- 堆Block
- 栈Block
- 全局Block
- 变量捕获
- __block、__weak
- weakSelf
4. 多线程
- 进程与线程
- 任务
- 同步执行
- 异步执行
- 队列
- 串行队列
- 并发队列
- 线程安全
- GCD
- NSOperationQueue
5. RunLoop
- RunLoop Mode
- RunLoop Source
- RunLoop Observer
- RunLoop 运行逻辑
- 常驻线程
6. 性能优化
- 卡顿优化
- 耗电优化
- 启动优化