iOS基础部分
1. 多线程
- iOS多线程的方案
- GCD的具体应用(分组,栅栏等功能的使用,主线程全局线程和创建线程之间的区别)
- GCD的底层实现原理
- NSThread的实现原理
2. 锁
- iOS中锁的种类
- 使用锁来实现一个单例
- 实现一个读写锁
- 在iOS中锁的具体应用
4. 属性关键字
- iOS属性的关键字有哪些
- strong和retain区别
- weak和assign相同点和不同点
- copy关键字的使用
- atomic是否真的能保证线程安全,为什么
- NSArray和NSMutableArray分别用什么来修饰
- NSString为什么用Copy来修饰,为什么
5. iOS中常用的设计模式
- MVC和MVVM的区别
- 用MVVM来实现一个登陆注册
- 如何来实现一个单例(使用锁来实现一个单例)
- KVO的底层实现原理
- 工厂模式
6. 继承, 分类,类扩展
- 继承分类扩展有什么相同点和不同点
- 在什么情况下你会选择继承,什么情况下选择分类
7. iOS组件化
8. iOS跨平台编程(RN技术)
9. 原生和H5交互的技术
9. iOS点击事件的整个传递过程
10. 如何保护APP中的隐私信息
11. 用过swift的吗,在项目中有没有实际使用过
12. AutoreleasePool的底层实现原理
13. RunTime的底层实现,你用runtime做过什么东西
14. Runloop是个什么东西,以及实现原理和机制
15. iOS中Block的用法和实现原理
16. Hacker部分
- 有了解过马甲包相关的内容吗
- 审核4.3如何解决
- 如何实现AB面
- 一个30M体量的APP,让你做重命名需要多久
网络部分内容
- http和https的区别
- https的加密方式 (对称和非对称加密)
- TCP的三次握手和四次挥手
- post和get的区别
数据结构部分
- 了解过哪些数据结构和算法
- 数组与链表的优缺点
- 单链表和双链表的区别
- 判断链表中是否有环
- 如何在链表中插入一个元素
- 二叉树遍历和排序
- KMP算法的实现
- 哈希表的底层实现和应用
- 求最长相同串
- 了解红黑树的实现
其他部分
- 自己的技术站是什么,有了解过H5和安卓的开发吗,对数据库和服务器有没有做过了解
- 平时会看那些技术网站,自己会写博客吗,有没有对开源库做过贡献,会看底层代码吗
- 个人未来两三年的职业规划是怎么样的
- 对公司加班你怎么看
- 遇到自己解决不了的问题是,你会怎么去做
- 为什么从上家公司离职
- 对加班怎么看
- 公司每天都会加班到十点以后,你可以吗
- 未来会住在哪里
- 你有女朋友吗
- 简单的对自己做一个评价
- 平时除了工作还回去做些什么
待补充......