微店面试题

微店面试题

微店面试题

1. 一面

1、说项目里的有价值的东西?

2、HTTPS 过程是怎么样的?非对称加密

3、Swift 中逃逸闭包和非逃逸闭包的区别?

4、属性用 copy 关键字,是深拷贝还是浅拷贝?深拷贝和浅拷贝的区别?

5、SDWebImage 的缓存机制?LRU 内部原理?下载完成图片后,是先存到内存、磁盘后,才显示到界面上吗?

6、AFN 用到了 NSOperation、GCD,说一下内部 Operation 相关的?Manager?

7、GCD 内部实现?

8、约束 left/right 和 leading/trailing 的区别?约束报黄怎么解决?

9、KVO 的原理?具体 NSObject 的两个方法?

10、消息转发流程?使用场景?

11、数据库减字段怎么容错?

12、有没有打包过私有库?

13、从点击 App 的图标到 App 启动,说一下这个过程?+load 发生在什么时候?

14、用什么管理第三方库?CocoaPods 中的 .lock 文件存储了什么信息?

15、说一下一个项目的架构?

16、组件化?

17、手写冒泡排序算法?算法复杂度?

2. 二面

1、项目介绍,开发人员分工?购物车本地化如果加入购物车的价格变了怎么处理的?

2、写一下其中一个项目的项目架构?写一下用到的第三方库。

3、项目用什么管理的?CocoaPods 指定版本号带 ~ 跟不带 ~各有什么含义?

4、AFN 实现原理?发10个网络请求,AFN 内部是怎么处理的?

5、SDWebImage 是怎么加载图片的?用的是 Get 还是 Post ?如果让你实现,你会选择 Get 还是 Post ?

6、HTTPS 流程是怎么样的?(画一下客户端、服务器的时序图)

7、加密算法,对称加密和非对称加密?

8、如何理解 OC 是动态语言?

9、Runtime?用 Runtime 做过什么?

10、Runloop?内部实现原理?跟自己写个 for 循环有没有区别?

11、内存管理?内存优化?

12、卡顿?

13、多线程?用 GCD 实现同步多个异步调用(a,b),然后再同步执行(c,d)

14、从点击 App 图标,到显示界面流程?

15、组件化?

16、编译过程?某一个东西是属于哪一步骤的?

17、微信支付流程(客户端、微信 SDK 、自己服务器、微信服务器时序图)

18、RN、Week?内部是怎么用 JS 调用原生的?

19、日志记录?

20、遇到的闪退?Bug?

21、竞争同一个资源?

22、进程线程与 App 的关系。

23、Git rebase

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×