蚂蚁金服/美洽网/美团网校招iOS工程师面经分享
蚂蚁金服
-
Objective-C中的Runtime解释一下;
-
RunLoop,Block,内存管理等
-
问:Runtime常用的几个应用场景?
答:我们常用Method Swizzling来将系统的方法换为我们自定义的方法,给系统方法添加一些需要的功能,来实现某些需求。例如,跟踪程序每个ViewController展示给用户的次数,可以通过Method Swizzling替换 ViewDidAppear初始方法。再例如更换全局UILabel默认字体,可以通过Method Swizzling替换UILabel初始方法来修改等。
美洽网
-
问我有没有用swift开发过商业项目;
-
问: action和noaction的区别。
答: action线程安全,但性能较差耗费资源较多,noaction非线程安全,但是action并不是绝对的线程安全,给面试官举了个例子;
3. Z型打印二叉树,打印螺旋矩阵,百万数据找出前k个等。
美团网
主要问项目的一些技术点,要求手写代码。
- 基础有kvo的实现原理;
2. http有哪些部分tcp和udp的区别;
3. 消息调用的过程,算法奇数排在前面,偶数排在后面,get和post的区别;
4. 智力题,一个骑手送餐,ABCD商店,送给abcd四个人等等 。
5. 问 :如何让一个label靠左,一个label靠右,然后右边的label能够完全显示。
答:设置约束的优先级。
#蚂蚁集团##美团##美洽##iOS工程师##校招##面经#