很多人写了很多年iOS项目,其实很多时候都是在搬砖,来回的码代码,却忘了学习新东西,随着年龄越来越大就有了职业危机感,会被市场淘汰,其实淘汰的并不是你的年龄,而是你的技术。市场一直都缺人才,缺的不是中低端人才,而是高级人才。所以作为程序员,我们每天都应该有新的收获。
一、UI视图
1.1 、事件传递机制
1.2 、UI绘制原理
1.3 、异步绘制原理
1.4 、流失页面的性能优化
1.5 、离屏渲染
二、OC语言
2.1 、KVO
2.2、 KVC
2.3、分类
2.4、 关联对象
三、Runtime
3.1、 对象、类、元祖对象
3.2、 消息传递机制
3.3、消息转发流程
3.4、Method-Swizzing
四、内存
4.1、 引用计数表
4.2、 弱引用表
4.3、 ARC,MRC
4.4、 循环引用
4.5、 内存管理
五、Block
5.1、 Block本质
5.2、 截获变量特性
5.3、 内存管理
5.4、 循环应用
六、多线程
6.1、 GCD,NSoperation
6.2、 资源共享
6.3、 线程同步
6.4、 SpinLock
七、RunLoop
7.1、 事件循环
7.2、 常驻线程
八、网络
8.1、 HTTPS
8.2、 对称加密算法
8.3、 非对称加密算法
8.4、 DNS解析
8.5 HTTP,TCP
九、设计模式
9.1、 桥接,适配器,命令
9.2、 责任链,单例
9.3、 六大设计原则
十、架构/框架
10.1、 MVVM,时长统计框架
10.2、 图片缓存框架
10.3、 PV量级10亿业务架构
十一、算法
11.1、 字符串反转
11.2、 单链表反转
11.3、 有序数组递归
11.4、 无序数组找中位
十二、第三方库
12.1、 AFNETworking
...
十三、跨平台(最少会其一)
13.1、 RN
13.2、 Flutter
13.3、 Weex
十四、加分项(不会也没事,会就更好)
14.1、OpenGL ES
14.2、逆向
写在最后
作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:761407670 进群密码123,不管你是小白还是大牛欢迎入驻 ,分享面试题、面试经验,讨论技术, 大家一起交流学习成长!
另附上一份收集的大厂面试题,进群可自行下载!
网友评论