ios面试面试题库iOS面试

iOS面试题整理,你需要的这里都有

2019-01-28  本文已影响2人  程序员_秃头怪

序言

过年临近,金三银四即将到来,根据统计,很多人都会选择在三月四月跳槽,原因有很多,企业年后会有大量员工离职,员工觉得老公司待遇不怎么样?薪资不够高,想换个新环境等等原因,所以,三月四月份就变成了招聘与跳槽的旺季。

在此,小编总结了一些50道面试题,我分享给大家,希望大家在三月四月要找工作的朋友,我的这篇文章能给你有所帮助。

基础问题
1、使用系统的某些block api(如UIView的block版本写动画时),是否也考虑引用循环问题?
2、用@property声明的NSString(或NSArray,NSDictionary)经常使用copy关键字,为什么?如果改用strong关键字,可能造成什么问题?
3、UIView和 CALayer是什么关系?
4、static有什么作用
5、Category(类别)、 Extension(扩展)和继承的区别
6、为什么代理要用weak?代理的delegate和dataSource有什么区别?block和代理的区别?
7、id和NSObject*的区别
8、如何令自己所写的对象具有拷贝功能?
设计模式
1、除了单例,观察者设计模式以外,还知道哪些设计模式?分别介绍一下
2、最喜欢哪个设计模式?为什么?
3、iOS SDK 里面有哪些设计模式的实践?
4、设计模式是为了解决什么问题的?
5、设计模式的成员构成以及工作机制是什么?
6、设计模式的优缺点是什么?
架构设计
7、MVC和MVVM的区别?MVVM和MVP的区别?
8、面向对象的几个设计原则了解么?最好可以结合场景来说。
9、可以说几个重构的技巧么?你觉得重构适合什么时候来做?
10、你觉得框架和设计模式的区别是什么?
11、看过哪些第三方框架的源码,它们是怎么设计的?设计好的地方在哪里,不好的地方在哪里,如何改进?
底层
16、main()之前的过程有哪些?
17、KVO基本原理?
18、Swift 下的如何使用 KVC?
19、:Swift有哪些模式匹配?
20、objc在向一个对象发送消息时,发生了什么?
21、静态库的原理是什么?你有没有自己写过静态编译库,遇到了哪些问题?
22、runloop是来做什么的?runloop和线程有什么关系?主线程默认开启了runloop么?子线程呢?
23、App 网络层有哪些优化策略?
24、TCP为什么要三次握手,四次挥手?
25、对称加密和非对称加密的区别?分别有哪些算法的实现?
26、HTTPS的握手流程?为什么密钥的传递需要使用非对称加密?双向认证了解么?
27、HTTPS是如何实现验证身份和验证完整性的?
28、如何用Charles抓HTTPS的包?其中原理和流程是什么?
29、什么是中间人攻击?如何避免?
网络
30、HTTP协议详解
31、谈谈你对HTTP 、TCP、 IP、socket 协议的理解
测试
32、单元测试那些事!
33、为什么使用这个单元测试呢?它给我们带来了什么好处呢?
34、单元测试的重要性:
swift
35、swift闭包
36、swift中高阶函数map用法
线程
37、 不要阻塞主线程
38、谈谈你对多线程开发的理解?ios中有几种实现多线程的方法?
39、进程和线程的区别?同步异步的区别?并行和并发的区别?
40、ViewController生命周期
41、iOS 中的多线程
42、内存管理的几条原则时什么?按照默认法则.那些关键字生成的对象
需要手动释放?在和property结合的时候怎样有效的避免内存泄露?谁申请,谁释放
43、dispatch_barrier_async的作用是什么?
44、如何用GCD同步若干个异步调用?(如根据若干个url异步加载多张图片,然后在都下载完成后合成一张整图)
http
46、http与https的区别?
47、服务器能否知道APNS推送后有没有到达客户端的方法?
app
48、1.什么方式可以看到上架App的头文件?
47、阅读过哪些框架的源码?能说说它的架构方式吗
49、iOS iAP内购审核可能失败的问题
50、IAP内购中虚拟货币导致审核无法通过的问题?

最后希望各位同学都能进入自己想要去的公司,在奋斗的这条路上,我坚信我们一直都没有放弃!

小编特地为大家整理了一份BAT面试题,需要的可以加小编的QQ群:923910776 希望对大家有所帮助,后期会不断更新添加新的面试题,可以帮大家查漏补缺。

上一篇下一篇

猜你喜欢

热点阅读