度小满和虎牙iOS面经

面了一整天,整个人都不好了……

度小满一面

  1. TCP 为什么需要三次握手
  2. 线程间通信的方式
  3. 手写连接两个字符串的代码
  4. 两个线程同时调用这个拼接函数,会有什么问题
  5. 进程有哪几个区
  6. 画出两个线程同时调用这个拼接函数时,进程的内存里的样子
  7. 项目中有哪些 CPU 和 GPU 密集的地方,怎么优化的
  8. 进程调度算法

度小满二面

  1. HTTPS 和 HTTP 的区别
  2. 合并有序链表
  3. static关键字在 C 和 C++的使用
  4. Objective-C 的动态性是怎么实现的
  5. 进程有哪些状态
  6. 进程的各种状态对应到 iOS 应用中是怎么样的
  7. 描述一下Runtime
  8. 描述一下RunLoop
  9. 什么是中断
  10. 解释一下虚拟内存
  11. 有没有进行过应用性能的优化
  12. Objective-C 中如何表示一个类,有哪些属性
  13. 类方法和实例方法的区别
  14. 从 Masonry 中学到了什么
  15. const 和 static 有什么不同
  16. HTTP 如何实现安全传输
  17. 常见对称和非对称加密算法

度小满三面

  1. HTTPS 和 HTTP 的区别
  2. 怎么防止中间人攻击
  3. 项目中使用的框架选择的依据是什么
  4. NSURLConnection 和 NSURLSession 的区别
  5. 写一个快排
  6. 项目中的重难点
  7. AFNetworking 的优点,为什么用 AFNetworking
  8. Lua 和JSPatch 进行热更新的原理
  9. JSPatch 中进行 Method Swizzling 的时机
  10. JS 和 Native 进行交互的方法
  11. 如何设计 JS 和 Native 进行交互的 JS SDK
  12. 说说常见的数据库及其优缺点
  13. 红黑树的实现
  14. 红黑树是怎么保证时间复杂度的
  15. iOS 中数据持久化的措施
  16. Keychain 的使用场景
  17. 西安市有多少辆车

虎牙一面

  1. 看过哪些库的代码
  2. iOS多线程的方案
  3. NSURLSession 是怎么实现的
  4. SDWebImage 的思路
  5. SDWebImage 如何清除过期的缓存
  6. HTTP 中有哪些常用首部
  7. HTTP 各种状态码及其含义
  8. HTTP 缓存策略
  9. HTTP1.1 和 HTTP 1.0的区别
  10. HTTP2的特点
  11. HTTP1.1 的 KeepAlive 是怎么实现的
  12. HTTP 如何进行新鲜度检测
  13. 引用和指针的区别
  14. block 如何修改变量的值
  15. iOS 进程和线程的区别
  16. 什么是循环引用
  17. C++中的智能指针有哪些,和 ARC 的区别

虎牙二面

  1. property 的常见修饰符
  2. weak 是怎么实现自动置 nil 的
  3. Objective-C 和 C++的不同
  4. iOS 的消息转发的原理
  5. iOS 的 Runtime 的原理
  6. 如何选择排序算法
  7. 如何设计一个安全的单例

虎牙三面

  1. iOS 的热更新方案、原理和缺点
  2. 项目中的长连接是怎么实现的
  3. KeepAlive 的默认时长是多少
  4. 项目中为什么要有心跳包,心跳包的时长为什么是270s
  5. JS 和 Native 通信的方式

#面经##秋招##虎牙直播##度小满##iOS工程师##iOS#
全部评论
你好,我想请问你是面实习生吗?还是正式的?
点赞 回复 分享
发布于 2019-04-23 22:02
大佬
点赞 回复 分享
发布于 2018-09-27 09:45
度小满在北京面的吗?
点赞 回复 分享
发布于 2018-09-19 16:20
在度小满实习,连续手写快排,背包,dfs递归和非递归,很难受
点赞 回复 分享
发布于 2018-09-17 08:40
所有岗位都有三面吗,大佬
点赞 回复 分享
发布于 2018-09-16 20:00
老哥 强啊
点赞 回复 分享
发布于 2018-09-16 17:44
你面的什么岗位?
点赞 回复 分享
发布于 2018-09-16 17:08
你好,你参加虎牙的二面了嘛?
点赞 回复 分享
发布于 2018-09-16 15:26
楼主,如果顺利的话,3面都是一起进行的吗
点赞 回复 分享
发布于 2018-09-16 15:09
度小满三面依然是 技术面啊 ....
点赞 回复 分享
发布于 2018-09-16 00:07
大佬度小满有说什么时候给结果吗?
点赞 回复 分享
发布于 2018-09-15 21:17

相关推荐

02-07 12:06
已编辑
华侨大学 测试开发
最近看到很多 92 的,甚至是硕士,开始往测开赛道卷,说实话有点看不懂。先把话说清楚,大厂里的测开,绝大多数时间干的还是测试的活,只是写点自动化脚本、维护测试平台、接接流水线,真正像开发一样做系统、做架构、做核心平台的测开少得可怜,基本都集中在核心提效组,而且人很少,外面进去的大概率轮不到你,我想真正干过人都清楚。很多人被洗脑了,以为测开也是开,和后端差不多,只是更简单、更轻松、还高薪。现实情况是,测开和开发的职业路径完全不一样。开发的核心是业务和系统能力,测开的核心是稳定性和覆盖率,前者是往上走,后者天花板非常明显。你可以见到很多开发转测开,但你很少见到干了几年测开还能顺利转回开发的。更现实一点说,92 的高学历如果拿来做测开,大部分时间就是在做重复性很强的杂活,这种工作对个人能力的放大效应非常弱。三年下来,你和一个双非的,甚至本科的测开差距不会太大,但你和同龄的后端、平台开发差距会非常明显。这不是努不努力的问题,是赛道问题。所谓测开简单高薪,本质上是把极少数核心测开的上限,当成了整个岗位的常态来宣传。那些工资高、技术强的测开,本身就是开发水平,只是挂了个测开的名。普通人进去,99% 做的都是项目兜底型工作,而不是你想象中的平台开发。测开不是不能做,但它绝对不是开发的平替,也不是性价比最优解。如果你是真的不想做开发,追求稳定,那测开没问题。但如果你只是觉得测开比后端容易,还能进大厂,那我劝你冷静一点,这只是在用短期安全感换长期天花板。有92的学历,如果你连测开这些重复性工作都能心甘情愿接受,那你把时间精力用在真正的开发、系统、业务深度上,回报大概率比卷测开要高得多。想清楚再下场,别被岗位名和话术带偏了,就算去个前端客户端也是随便占坑的,测开是一个坑位很少赛道,反而大面积学历下放,不用想也能知道会是什么结果,我想各位在JAVA那里已经看到了
烤点老白薯:测测你的
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
7
69
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务