金三银四,2019最新面试技能方向分享

前言

辞去旧的一年,开始新的出发,即将临来金三银四跳槽高峰期
对于技术人员来说,面试就是打开新的大门的钥匙
回顾18年iOS发展的方向,下面总结一些面试小技巧以及今年面试方向

进阶技术方面

架构模式:

1、面向协议编程
2、面向借口编程(MVP)
a:mvc跟mvp的区别以及使用的优缺点
3、mvc&mvvm
4、函数式编程

设计模式:

1、23中常见的设计模式
a:高频
b:中频
c:低频
2、iOS中的设计模式
3、mvc经典的架构中有哪些常用的设计模式

大工程项目管理:

1、工程模块管理
2、组件化
a:组件间的通讯,是通过什么方式来做的

性能优化:

场景解决方案:

1、高并发网络场景
2、UI优化处理
3、大数据同步

第三方框架部分:

1、YYKit
2、AFNetworking
3、SDWebImage
a:SDWebImage是怎么来清理缓存
b:SDWebImage是怎么处理接收的内存警告
c:caear和clean有什么区别
d:SDWebImage中怎么计算图片的成本大小

iOS面试底层方面

OC语言部分:

1、属性修饰符
a:什么情况使用weak关键词,相比assign有什么不同
b:@property的本质,ivar、getter、setter是如何生成并添加到这个类中的
2、对象消息机制
3、Block
a:使用block时什么情况会引发循环,怎么解决
4、kvo&kvo
a:如何手动触发一个value的KVO
b:kvc的keypath中的集合运算符如何使用
5、其他补充
a:obic使用什么机制管理对象内存
b:BAD_ACCESS在什么情况下出现
c:lldb(gdb)常用的调用命令
d:oc中字典的实现原理
e:iOS中的消息机制和消息转发机制的区别
f:怎么解决iOS打包成功后,运行在iPhone上会闪退、黑屏问题

Runtime System:

1、_objc_msgForward 函数是做什么的,直接调用它会发生什么

多线程:

1、runloop和线程有什么关系
2、runloop的mode作用
3、GCD
a:GCD的队列(dispatch_queue_t )分哪两种类型
b:如何用GCD同步若干个异步调用(如根据若干个url异步加载多张图片,然后都在下载完成后合成一张整图)
c:dispatch_barrier_async 的作用
d:苹果为什么要废弃dispatch_get_current_queue

NSOperation:

runloop:

数据结构方面

线性表:

1、线性表顺序存储
2、创建性表
a:开辟堆区(malloc函数)
b:结构图指针的运用
c:利用lldb查看内存空间
3、销毁性表
a:free和Release妙用
4、插入元素
5、删除元素
a:简单算法
b:算法优化
6、算法时间复杂度估算
7、NSArray内存中的变化
8、NSMutableArray
a:扩容实现原理
b:内存中的变化
c:capacity的正确运用
9、编译器优化
a:Optimization Level
b:Debug&&Release
c:反汇编查看优化结果

以思维导图形式展现

iOS进阶技术

image.png

底层方面

image.png

数据结构方面

image.png

简历指导方面

image.png

面试技巧方面

image.png

结语

以上是方向性指导,以上内容都有相对应的视频讲解,在此,趁着金三银四的高峰期小编免费分享以上内容全部视频;需要这些视频请关注我、喜欢此篇文章,加我的iOS开发者群:637919808联系我免费领取(由于视频是加密的,需要我开通权限)


image.png

你可能感兴趣的:(金三银四,2019最新面试技能方向分享)