字节飞书客户端 iOS 开发实习一面凉经

10.23 飞书一面
1. iOS 的学习方法
2. 为什么采用 MVVM 架构
3. 双向绑定是怎么实现的,还有别的实现方式吗
4. MVVM 和 MVC 的区别
5. MVVM 相比 MVC 的好处(除了解耦降低代码复杂度,还有是能对 View 和 ViewModel 单独进行测试)
6. 列表怎么实现的,了解 UITableView 的 cell 复用吗
7. 技术上的难点
8. Swift 并发讲讲
9. @MainActor 用过吗,在哪用
10. 那如果是在非主线程上用 @MainActor,会发生什么?
11. 那假设有这种情况,图片下载不是一个异步的实现吗,那假设ABCD,它要是下载好了后,A的图片显示到B上了,B的图片显示到C上了,这种要怎么解决
12. git 工作流,想要新建一个分支怎么做
13. 手撕单例模式
14. 简单工厂和工厂方法,手撕工厂方法模式(不会,寄)
15. 进程线程的区别
16. 为什么进程之间是隔离的,隔离性和安全性是怎么保证的?(应该是从虚拟内存上说怎么实现的)
17. 那虚拟内存怎么得到物理地址的这个过程说一下
18. 那多线程对于堆内存的读取会不会出现安全上的问题
19. 多线程对于栈上的内存读取会不会出现安全上的问题
20. 怎么保证线程安全呢
21. TCP 和 UDP 的区别
22. TCP 是怎么保证可靠性的
23. TCP 三次握手
24. 为什么不是一次,两次呢?
25. 哈希表的查找时间复杂度是多少,底层实现原理?
26. 什么时候会出现最坏的情况?
27. 哈希冲突?
28. 两个栈如何实现队列,两个队列如何实现栈

手撕: 442. 数组中重复的数据

总共1h10min左右面试
#面试问题记录#
全部评论
iOS怎么学的,可以分享交流交流吗
点赞 回复 分享
发布于 2025-12-09 20:43 广西
为啥挂啊
点赞 回复 分享
发布于 2025-10-27 16:32 陕西

相关推荐

2025.3.20下午3点1.面试官介绍业务2.自我介绍3.说一说布隆过滤器的实现,为什么用谷歌的布隆过滤器(轻量级)?,有没有看过他的源码?(没有)4.实习和区块链有关,对他了解吗?(做二次开发,没碰底层,简单介绍区块链)5.说一说简历里面写的oom问题?这里有用到jinfo等命令吗?(没有,比较简单的oom问题没用到这些命令)画火焰图了吗?(没有)?6.线程池使用的全过程?有监控过线程池吗?(没有)7.有没有解决过死锁问题?(没遇到过,但是看过很多解决方案)8.java锁的实现方式?9.分布式锁的实现方式?运用?(他说线程池经常配合锁一起用,没这样用过)10.Linux上出现很多time wait怎么排查(不会)11.三次握手四次挥手的过程中服务器的状态(不会)12.用过socket吗?(课设用过,他说那过)13.长链接用过吗?(没有)14.用的Docker版本多少?(不记得)15.Docker相关命令16.Docker底层是docker d还是container d(没听说过)17.Docker用的是桥接还是host(应该是用桥接,面试官:所以你只是会用命令但是并没有了解过底层是吧-对)18.进程、线程、协程的区别?进程间的通信方式?还知道其他的吗,比如java机这种?(没听说过),有使用过共享内存吗?(没有)19.所以没有手写过协程之类的是吧?(没有)20.他说给了个简单的Sql执行-sql语句:select A.a A.g from user where a=1,b=2 group by g 有两个索引(a,b,c)和(a)他会走索引吗-会吧(答错了,他说有group排序就不行,但是查了发现a,b好像确实还是用到索引了,要是联合索引包括g,group也会用到索引)算法:手撕LRU(让我看完题目问我思路,说了双向链表或者大顶堆,问我多久能写完,想了一下自己也不太清楚什么时候能搓完,他说java搓大顶堆挺耗时间的,那换一道,结果换了没写出来,太菜了)面评脏
查看17道真题和解析
点赞 评论 收藏
分享
评论
5
10
分享

创作者周榜

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