阿里 iOS 五轮面经分享
感觉牛客很少看到iOS的面经了,今天收到了阿里的意向书,来分享下面经,希望大家都Offer++~!
总体感觉面试官都非常好,会提前沟通面试时间,交流沟通顺畅,团队也切合。
面试主要问基础知识+实习项目经历。
阿里一面
- Objective-C和Swift对比,安全性体现在什么方面?
- 你觉得苹果在设计OC和Swift时候,都有哪一些考虑?为什么这样设计,这两门语言。
- 有没有读过iOS相关的源码?
- RunLoop
- RunTime
- @property 调换顺序之后是否会重新编译
- 是否看过第三方库的源码,说一下设计巧妙的地方
- 你们写的App中,有没有遇到什么大的bug,是怎么调试的?
- Block
- 两个链表判断成环
- 你有什么优点和缺点(突然问个非技术问题hhhh)
- Block循环引用,怎么解决
- 不可变量进行Copy 深拷贝,还是浅拷贝
- @property 哪些关键字
- GCD有哪些类型
- 串行和并发队列
- 队列的优先级
- JSPatch 怎么做的,原理是?
- Google Summer of Code 主要是做了什么事情?
- 卷积神经网络原理?怎么减少参数的?
- 你们的APP是怎么分工的?你主要做的什么?怎么设计的,可以说一下吗?
- 你们的APP相对于市面上已经有的APP,有什么样的优势?集成以及一些新的功能。
- 平时是怎么学习iOS的?
阿里二面
- JSPath的原理,热修复是怎么做的?热修复如果用Python的话要怎么做?
- 你们APP的优势体现在哪里?为什么做?
- 相似照片算法是怎么样的一个过程?
- 说一下你的一个项目?需求是什么,遇到的问题是什么,你是怎么解决的?
- 快速排序
- 源代码到可执行程序的过程
- 词法分析做什么?
- 卷积神经网络的原理,怎么减少参数的? 卷积核
- ARKit 了解吗?
- 实验室工作,技术问题
- 其他的忘记了
阿里三面
交叉面。主要是根据项目进行询问。
- 点击APP启动过程
- MVC中C的理解
- JSPath,是如何实现的?
- 百度实习的难点
- 未来的计划
- A-B-C 三个任务分别指向,如何控制顺序?
- 其他的忘记了
阿里四面
交叉面。主要是根据项目进行询问。
- 豆瓣和百度的不同风格
- 架构上的区别
- 怎么保证界面的流程性?
- UI优化
- 数据优化
- 如何用Core Graph画圆
- 你自己的APP用的什么架构
- IP 地址用 int 保存和读取转化(当时。。卡住了,Python写多了都忘记了int第一位是符号位)
- APP的相似照片检测算法
- 相似还是相同
- 性能怎么样
- 人脸识别能做吗?
- 除了 iOS 还学了别的什么吗?(那很多了......)
- 其他的忘记了
HR面
HR面一半时间都是在问技术。
- 讨论下详细的APP设计(讨论了很久)
- 多线程是怎么选个数的?有没有大小的限制?
- 未来的职业规划