字节抖音iOS客户端实习 123hr面 面经 - 图1

1面

  1. 自我介绍
  2. 项目里的困难
  3. 使用过哪些设计模式
  4. 讲一下MVC
  5. MVVM
  6. TCP三次握手四次挥手
  7. 为什么是三次握手四次挥手
  8. 介绍分析学过的所有排序算法
  9. 排序的稳定性指的是
  10. 数组和链表
  11. 有什么数据结构可以兼顾数组和链表的优点
  12. 讲一下进程和线程
  13. iOS点击事件处理
  14. 内存泄漏和内存溢出是什么
  15. 使用block的内存泄漏
  16. 写一下冒泡排序
  17. 给定数组和k,求数组中k个连续元素和的最大值
  18. (反问)部门的业务内容

2面

  1. 自我介绍
  2. 项目里的印象深刻的困难
  3. 为什么选iOS
  4. 怎么捕获点击事件
  5. (比划)A的子视图B,B里有一个按钮C,C的显示范围超出了B,点击超出范围的B会有响应吗
  6. 响应者链的体系
  7. OC写一个Person类,拥有外部只可读的name,外部可读写的age两个属性,提供initWithName的初始化方法,保证两个Person的相等只需要两个Person的name相等
  8. 苹果公司为什么设计UITableView有dataSource和delegate
  9. UIView的继承关系
  10. isa指针是什么
  11. UIController和UIResponder的关系(二面没答好三面又问了)
  12. 介绍NSNotification,如何使用
  13. block是什么
  14. block可以视作一个对象吗
  15. 面向对象编程
  16. 说OC和C++是面向对象编程语言,C语言则不是的根本原因
  17. 什么是隐式动画
  18. 算法题:给一个数组和k,从数组里找三个数的和最接近k并返回

3面

  1. 各种项目细节
  2. 觉得前两面怎么样
  3. 什么契机选择iOS
  4. 看了哪些书
  5. storyboard的原理
  6. UIController和UIResponder
  7. 点击屏幕到响应事件的流程是怎样的
  8. iOS内存管理
  9. 为什么说block和对象相互持有
  10. 类比其他语言(C++)的内存管理
  11. iOS动画
  12. TCP的慢启动过程
  13. WEB页面解析过程
  14. 学校里计算机网络实验做了什么
  15. 多线程需要注意什么
  16. 怎么保证线程安全
  17. 反问环节:实习生的培养规划

hr面

各种家长里短,复盘前三轮面试、有接触其他技术栈吗、在校学习情况、职业选择与规划以及入职时间等等……整个过程还是比较轻松的。

资料推荐

如果你正在跳槽或者正准备跳槽不妨动动小手,添加一下咱们的交流群1012951431来获取一份详细的大厂面试资料为你的跳槽多添一份保障。

字节抖音iOS客户端实习 123hr面 面经 - 图2

更多精彩分享