找回密码
 立即注册
查看: 382|回复: 0

2022最新iOS开发岗位面试题

[复制链接]
发表于 2022-1-10 16:46 | 显示全部楼层 |阅读模式
最近公司招人,所以面试了一波,总结了一下这个区间内的要求吧。
我收集的是面试者反馈给我的真题
面试答案下面有,希望大家收藏下
一、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
答案详见:http://docs.qq.com/doc/DVWlQam9Qd3B1cEF2
希望自己能有目标有计划地准备面试,后面我会逐个复习一下相应的内容
    更多技术题合集:
iOS技术题大全(上)
iOS技术题大全(中)
iOS技术题大全(下)
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2025-5-15 06:47 , Processed in 0.138248 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表