安居客、字节跳动、阿里巴巴、海康威视ios工程师社招面经
安居客
主要问什么GCD多线程编程;
问自己如何实现NSOperation的功能
问网络编程部分;
socket是对TCP/IP协议的封装实现;
http是基于socket怎么实现的;
TCP的三次握手之前要干什么;
你觉得ios以后会是一个什么样的局面;
收到内存警告时应该怎么处理。
字节跳动
问了gcd,JS;
对Runtime,Block底层问题问的比较深入;
AFNetworking和socket的内部和具体实现;
你觉得对你做过的项目应该进行哪些优化;
你对我们公司产品有啥建设性意见
阿里巴巴
内存管理、autorealse、多线程、block等知识;
根据简历上的项目,主要围绕实现方法;
了解我的工作经历,个人处理问题的一些方法;
看重处理问题的过程或者发现问题的过程;
还有一些编程的基础问题,面向对象的三大特性等等;
如果游戏中有个送奖品的功能,上午送一次,下午送一次,上午领过了奖励,下午就不能领了,你怎么设计程序的逻辑。
tcp怎么识别get请求,异步阻塞;
问NSDictionary的实现,以及复杂度。
问了些ios基础,多线层,类别之类的;
tcp怎么识别get请求;
关于你的工作进来和工作意向,职业规划
海康威视
1、KVO及内部实现原理
2、是否可以把比较耗时的操作放在NSNotificationCenter中?
4、不用中间变量,用两种方法交换A和B的值
5、什么是动态,举例说明
6、runtime实现的机制是什么、怎么用、一般用于干嘛?你还能记得你所使用的相关的头文件或者某些方法的名称吗?