头条iOS面试总结
一面
-
自我介绍
-
项目相关
-
怎么自定义导航跳转
-
谈谈runtime的理解
-
KVC的用途
-
使用method swizzling要注意什么?(进行版本迭代的时候需要进行一些检验,防止系统库的函数发生了变化)
-
谈对引用计数的理解
-
谈谈runloop的理解
-
runloop有哪些状态
-
autoreleasepool的使用场景
-
TableView优化,怎么减少卡顿
-
copy assign retain weak关键词
-
JSON转Model
-
代码布局
-
多屏幕适配
-
HTTP2
-
HTTP请求头和响应头
-
Cookie
-
NSCache
-
自己设计一个缓存器
-
怎么实现LRU
-
SDWebImage
-
二叉树先序遍历(递归和非递归)
二面
-
MVC的一些缺点
-
讲一讲其它架构
-
你知道哪些编码方式
-
算法字符串翻转
-
多线程的方式和它们的区别
-
队列和线程的关系
-
一道线程安全的题
-
有哪些锁
-
属性的关键字
-
assign可以用于OC对象吗
-
copy和strong的区别
-
weak如何实现自动赋nil
-
为什么不可变对象要用copy
-
assing可以使用在对象中吗
-
Pod update和pod install的区别
-
layoutIfNeeded和setNeedsLayout的区别
-
抓包工具抓取HTTPS的原理
-
isEquel和hash的关系
-
bitmap的结构
-
可变数组的实现原理
-
如何hook一个对象的方法,而不影响其它对象
-
如何避免if else
-
自旋锁和互斥锁的区别
三面
-
介绍项目,主要介绍自己强项一点的地方
-
数组cop后里面的元素会复制一份新的吗
-
数组的浅拷贝与深拷贝
-
TCP为什么是三次握手和四次挥手
头条一直都是视频面,而且是一条龙服务。总体来说感觉不错,反正主要就是需要基础足够扎实
全部评论
(1) 回帖