岗位/面试时间
iOS开发 2024/3/25
面试题目
1.自我介绍
2.专业和iOS无关,为什么考虑学iOS?
3.拷打项目,对MVVM、MVC的理解,项目是MVVM的,怎么体现,每个部份负责哪些功能?
4.数据库是sqlite,用的哪个库,有没有用第三方库?
5.对SPM和CocoaPods的了解?现在很多项目还是用CocoaPods知道原因吗?
6.iOS的内存管理了解吗?
7.会哪些编程语言?Swift学了多久?OC呢?
8.对可选类型的理解
9.Swift和其他语言,比如python和C++,有什么特点?
10.说说Swift的class和struct有什么区别?在项目里用哪个比较多,什么情况用?
11.项目里有用到多线程吗?(说了GCD)介绍一下用了GCD的哪些方法?
12.如果给你ABC三个线程,C需要AB的结果,你怎么处理?
13.锁和信号量有什么区别?
14.GCD的sync和async?
15.并行和并发?
16.知道LRU吗?
17.TCP的三次握手,为什么握手要三次挥手要四次?
18.HTTP和HTTPS的区别?
19.SSL的三次握手了解吗?
20.了解中间人攻击吗?说说原理。
21.数组和链表的区别?使用场景?
22.你平时怎么使用git?
23.如果push之后发现commit写错了要怎么改?
24.手撕代码:两个栈实现队列。本来想用swift写,但发现还要自己实现栈,就换了python。
反问:
1. 略
2. 跨平台开发的技术栈?
主要是RN。
3.如何看待AI开发?
是辅助工具。