644 IOS面试题部分总结及复习资料
2024-04-01 16:51:39 0 举报
AI智能生成
登录查看完整内容
这份面试题主要包括了iOS开发中的基础知识和应用。首先,你需要掌握Objective-C、Swift语言编程,理解OOP、数据结构与算法、设计模式等编程基础知识。接着,对于iOS平台和相关开发工具(如Xcode)要有所了解,掌握App的生命周期、开发界面创建和导航架构、多任务与线程管理等。此外,网络编程、数据存储和性能优化等都是面试的重点。针对iOS特殊功能,如Core Location、地图服务、推送通知、蓝牙通信等,也需要有所了解。最后,为做好面试准备,多参与实战项目、关注行业动态,提高自己的竞争力。
作者其他创作
大纲/内容
1,分类和扩展有什么区别?可以分别用来做什么?分类有哪些局限性?分类的结构体里面有哪些成员?
2,讲一下atomic的实现机制;为什么不能保证绝对的线程安全(最好可以结合场景来说)?
3,被weak修饰的对象在被释放的时候会发生什么?是如何实现的?知道sideTable么?里面的结构可以画出来么?
4,Autoreleasepool 所使用的数据结构是什么? AutoreleasePoolPage 结构体了解么?
5,讲一下对象,类对象,元类,跟元类结构体的组成以及他们是如何相关联的?为什么对象方法没有保存的对象结构体里,而是保存在类对象的结构体里?
6,iOS 中内省的几个方法? class 方法和 objc_getClass 方法有什么区别?
7,RunLoop的作用是什么?它的内部工作机制了解么?(最好结合线程和内存管理来说)
8,哪些场景可以触发离屏渲染?(知道多少说多少)
1.IOS基础题
1,App 网络层有哪些优化策略?
2,TCP为什么要三次握手,四次挥手?
3,HTTPS的握手流程?为什么密钥的传递需要使用非对称加密?双向认证了解么?
4,HTTPS是如何实现验证身份和验证完整性的?
5,如何用Charles抓HTTPS的包?其中原理和流程是什么?
2.IOS网络题
1,除了单例,观察者设计模式以外,还知道哪些设计模式?分别介绍一下
2,iOS SDK 里面有哪些设计模式的实践?
3,设计模式的成员构成以及工作机制是什么?
3.IOS设计模式题
1,MVC和MVVM的区别?MVVM和MVP的区别?
2,面向对象的几个设计原则了解么?最好可以结合场景来说。
3,可以说几个重构的技巧么?你觉得重构适合什么时候来做?
4,你觉得框架和设计模式的区别是什么?
5,看过哪些第三方框架的源码,它们是怎么设计的?设计好的地方在哪里,不好的地方在哪里,如何改进?(这道题的后三个问题的难度已经很高了,如果不是太N的公司不建议深究)
4.IOS架构和设计题
1,链表和数组的区别是什么?插入和查询的时间复杂度分别是多少?
2,哈希表是如何实现的?如何解决地址冲突?
3,排序题:冒泡排序,选择排序,插入排序,快速排序(二路,三路)能写出那些?
4,链表题:如何检测链表中是否有环?如何删除链表中等于某个值的所有节点?
5,数组题:如何在有序数组中找出和等于给定值的两个元素?如何合并两个有序的数组之后保持有序?
6,二叉树题:如何反转二叉树?如何验证两个二叉树是完全相等的?
5.IOS数据结构&算法题
IOS面试题
0 条评论
回复 删除
下一页