700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 某TMD公司iOS高级工程师面试回忆

某TMD公司iOS高级工程师面试回忆

时间:2020-05-07 01:44:14

相关推荐

某TMD公司iOS高级工程师面试回忆

前言:TMD某T的iOS高级开发岗第三面,下面记录这次面试的回忆以作日后复习。

一、自我介绍

简单介绍一下你自己吧

解析:简单介绍下自己的名字,教育背景,现在的工作,做过的项目

二、自我介绍衍生的口头问题

讲讲下你在你项目中做过的优化或者技术难点

题外话:这种问题最好各人自己找问题讲讲,不多,提前准备一个你项目中非常擅长并熟悉的点,即可。

三、编程题:实现以下功能

编写一个自定义类:Person,父类为NSObject
该类有两个属性,外部只读的属性name,还有一个属性age
为该类编写一个初始化方法initWithName:(NSString *)nameStr,并依据该方法参数初始化name属性。
如果两个Person类的name相等,则认为两个Person相等

四、由编程题衍生的口头题目

怎样实现外部只读的属性,让它不被外部篡改
nonatomic是非原子操作符,为什么要这样,atomic为什么不行?有人说能atomic耗内存,你觉得呢?保读写安全吗,能保证线程安全吗?有的人说atomic并不能保证线程安全,你觉得他们的出发点是什么,你认同这个说法吗?
你在初始化的方法中为什么将参数赋给_name,为什么这样写就能访问到属性声明的示例变量?
初始化方法中的_name是在什么时候生成的?分配内存的时候吗?还是初始化的时候?
作为return的self是在上面时候生成的?
为什么用copy,哪些情况下用copy?

五、另外聊到的实际开发问题

你平时有做过优化内存的哪些工作?怎样避免内存消耗的大户?

你怎样实现线程安全的?这些线程安全的办法和atomic有什么不一样?atomic的实现机制是怎样

六、后面的话

以上是题目的回忆版,读到这里读者可以自己找答案。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。