百度一面
- 自我介绍
-
做项目用什么语言
OC和Swift都有
- OC和Swift的区别
-
Swift面向协议编程的理解(举例)
四边形缺陷,多重继承解决
-
iOS事件响应链
美团问过
-
post和get的区别
腾讯问过
- GCD中串行、并行、并发的概念
- 多线程内存泄漏情况
- 内存泄漏常见情况
- 为什么块内部要重新强化弱化的对象
- 你是怎么优化代码的
- 死锁的情况
- 死锁的四个必要条件
-
怎么解决死锁
- 请求与保持条件:银行家算法
- 不可抢占:不知道
- 循环等待:等待超时机制
- 互斥条件:PV操作、信号量机制
- 为什么重构网络请求框架
- 手撕快排
- 快排的非递归实现
-
数据库索引的实现原理
不会
- 平常关注的技术博客有哪些
- 有没有看WWDC
半个钟完事,面完直接跟我说过了,准备二面
百度二面
这次的面试官很好人
- 自我介绍
- GitHub有什么内容
- 怎么实现的
-
有没有用户反馈
有几个star咯
- 开发遇到的问题
-
HTTP和TCP/IP对比
HTTP是应用层协议,是超文本传输协议
TCP/IP是传输层协议,主要用于建立连接
-
有学习过算法吗
没有!
-
怎么实现长链接
我问了服务端要不要推送信息给客户端,还是说只是客户端单方面请求,他说分开来说
单方面请求:keep-alive 推送信息:webSocket
-
怎么判断长链接断线了
socket心跳机制
-
平常项目用哪种架构比较多
MVC
- 为什么使用MVC
- 为什么重构网络请求框架
百度三面
这次的面试官感觉是安卓开发的
-
我看到你简历上面没有写项目相关的内容,你在学校只是学习吗
????
- 项目相关
- 项目遇到最大的问题
-
为什么重构网络请求框架
问了三遍了大哥
- 有学过其他技术吗
- 有了解过安卓开发吗
-
为什么不做安卓开发,iOS系统闭源会有很多问题,安卓就没有
你可醒醒吧你
- 未来职业规划
然后等了一个多小时都没反应