随便谈谈iOS面试

最近公司一直在招iOS,不得不感叹iOS的队伍真是越来越壮大了,一个职位每天的投递量几乎接近600份,这几天也接触了很多来面试的人,整体体会总结成下面3点:

1.薪资还是2年前的水平,止步不前

2.面试质量相对以往有了很大的提升

3.面试人员的技术相对而言比以前高了一个档次,当然也有很多粗枝烂叶

言归正传,我们下面来列出一些经常会问到的面试题:

1.strong和copy的区别

回答这种类型的题目的时候一定要从它的根本去描述,strong是值传递,copy是对象拷贝,可以适当延伸

2.分类和扩展的区别

都可以用来给一个类添加方法,分类理论上而言不能添加属性,但是可以通过runtime的关联对象的方法来给分类强制添加属性

3.__block和__weak的区别

__block可以用来修饰对象和基本类型数据,可以用于ARC和MRC

__weak只能用来修饰基本类型数据,只能用于MRC

__block修饰的对象可以用来在block中重新赋值

4.weak和assign的区别

weak修饰的对象被释放后,就会被置为nil,不会产生野指针;assign是指针赋值,不对引用计数操作,使用之后如果没有置为nil,可能就会产生野指针;

weak一般用来修饰对象,assign一直用来修饰基本类型数据

5.XIB关联的对象为什么都用weak修饰

避免造成循环引用

6.UIView和UILayer各自的集成关系

可以说UIView是对UILayer的封装,UIView继承自UIResponse,UIResponse继承自NSObject; UILayer直接继承自NSObject,所以UILayer不会响应事件

7.imageName和imageWithContentOfFile

这个问题大部分的面试者都能答的出来,应该是事前有过准备,一般情况下我们使用iamgeName,因为这个方法会缓存显示过的图片,效率更高。imageWithContentOfFile一般用在一次性显示的地方,它不会缓存显示的图片,像登录界面就可以用这个

8.instrucments的使用

这个就不详述了,我收藏过一篇文章,写的很不错,非常详细,可以到我的收藏里面去找

9.NSMutableArry不可以用copy修饰,应该用mutableCopy,否则会导致数组无法添加对象

综上,其实面试题是其次,主要是面试时的心态,以及和面试官的交流。就我而言,在面试的时候,我更加在乎这个人的性格和人品,考虑他是否能够融入我们的团队,为人是否浮夸,做事是否脚踏实地。面试的时候一定要戒骄戒躁,即使你觉得面试官的技术不如你,也不要表现出一副自以为是的面目,这样非常引起人的反感。一般公司都会进行好几轮面试,你的回答一定要一致,我遇到过一个面试者,跟我说的是15K,然后说可以考虑适当下调,然后我们经理问他的时候,他又说15K,没有商量,本来感觉很不错的,后面还是被淘汰了。所以希望后面的面试者能汲取教训,面试题我会不间断更新,祝各位求职者能早日找到理想的归宿!!!

你可能感兴趣的:(随便谈谈iOS面试)