2022最新iOS开发岗位面试题


最近公司招人,所以面试了一波,总结了一下这个区间内的要求吧。
我收集的是面试者反馈给我的真题
面试答案下面有,希望大家收藏下

一、Swift

1、Swift、OC 如何相互调用? Swift-->OC 、OC -->Swift? 我开发一个Swift的SDK,(API都是Swift的), 内部需要调用到 OC 的库, 要怎么做?
2、dynamic 在swift与OC中的作用
3、protobuf的原理
4、 rn 与 flutter 的区别,flutter 组件渲染规则

二、ISA、类结构

1、 isa 指针是什么?里面有哪些特殊的位数?什么是TaggedPointer的优化?
2、 isa指针里面都存了什么,32和64位分别讲一下
3、 OC 是否支持重载? 为什么?
4、IMP、SEL Method 都表示什么意思? 与 _cmd 相关
5、 class 的底层结构是什么样的?
6、 method_t 里包含什么?
7、 super 的本质是什么?
8、 OC的消息机制有几步?

三、GCD

1、 group 如何实现barrier类似的功能?
2、 gcd queue 的区别
3、 gcd、NSOperation区别, 功能方法区别.
4、 GCD group 如何实现同步的? (还能用什么实现?)
5、 执行一个 NSThread 任务, 如何在执行过程中让他终止?
6、 iOS NSOperation 是如何终止/取消任务的?
7、 多线程,异步执行(async)一个performSelector 会执行么?如果加上 afterDelay呢?
8、 GCD 实现 NSOperationQueue
9、 DispatchQoS的作用

四、响应链

1、 app如何接收到触摸事件的
2、 响应链: 如果 Swizzle 了 父 View 的 touchBegin 的方***对子 View 造成什么影响?
3、两个按钮同时响应
4、UIbutton继承链,UIControl UIresponder区别
5、hit-test 和 point inside 的区别

五、组件化、架构

1、 CTMediator
2、. 公司有多个项目启动, 如何让接入的组件效率提升? (不局限于iOS, 要讲前后端配合的方案, 偏重量级的方案)
3、. 如果你做的是一个超级 APP (微信、淘宝), 里面有一个引擎可以运行不同的小程序, 你如何设计保证小程序之间的安全性?
4、 介绍一下你们APP的架构设计

六、线程、队列、锁

1、线程、队列的关系? 一个线程是否可能存在于两个队列?
2、 队列一定会创建线程吗?
3、队列是否可以无限制创建?
4、 PerformSelector & NSInvocation优劣对比*
5、 gcd 的使用,能不能取消?
6、如何进行线程保活
7、编程题 3个线程顺序打印 0-100

  • 面试答案合集:

iOS技术题大全(上)
iOS技术题大全(中)
iOS技术题大全(下)


#iOS面经##面试题目##iOS##学习路径#
全部评论
谢谢楼主分享!!!
点赞 回复 分享
发布于 2022-02-16 12:51

相关推荐

不愿透露姓名的神秘牛友
11-21 17:16
科大讯飞 算法工程师 28.0k*14.0, 百分之三十是绩效,惯例只发0.9
点赞 评论 收藏
分享
想润的芹菜人狠话不多:把其中一个老总放中间都会得罪另一个
点赞 评论 收藏
分享
喜欢走神的孤勇者练习时长两年半:爱华,信华,等华,黑华
点赞 评论 收藏
分享
1 36 评论
分享
牛客网
牛客企业服务