成都ios培训
达内成都高升桥中心

15023458194

热门课程

iOS面试心得

  • 时间:2017-08-15 09:35
  • 发布:成都达内ios课程首页
  • 来源:ios面试

话说年后果然是跳槽高峰,在招聘网站放出了许多职位。而我,因为自身发展原因选择在年前裸辞,在年后的这段时间也投了几家北京公司的简历,当然最后也收到了offer。在这里我要说“机会是留给有准备的人”一点没错,面试也是需要准备的:以为自己刚刚辞职,基础还算牢固,后来才发现自己太年轻了,笔试的时候让写一个单例都没有写出来,因为工作中实在是太依赖Xcode的了,随手打Dispatch就自动生成了单例。后来就在家一边复习写过的代码,一边看看网上的面试题,下面我就谈谈面试过程中的iOS相关的题目吧。  

写了几篇笔试题,发现一个特点,就是他们大多也是从网上找的题。那么这些题我首推文章:Google搜索“《招聘一个靠谱的iOS》面试题参考答案”,分为上下两篇,题目答案写的非常详细。这里值得看的是一些简答题,以及可以当场写出的题(如果您应聘的职位年限有限,跟编译器、底层有关的东西可以暂时不看)(再来个括号,利益关系,在这里不会出现我司面试我时使用的题目)。比如weak和assign的联系与区别,比如NSString为什么要用copy,比如如何避免block中循环引用,都是重点考察的题目。还比如Category和Extention的联系与区别,比如ARC如何管理内存,比如c中malloc、strcpy、memcpy函数的使用都是常见的题目。  

下面是两道这几篇笔试题中出现概率比较小的题:  

1、Autolayout一般情况下是在Storyboard中拖线完成,如果要你定义Autolayout中两个空间的位置关系,用函数的方式怎么去表示?  

这道题只要知道在代码中实现用到NSLayoutConstraint就好办多了,设置NSLayoutConstraint,比如说[NSLayoutConstraintconstraintWithItem:subViewattribute:NSLayoutAttributeToprelatedBy:NSLayoutRelationEqualtoItem:self.viewattribute:NSLayoutAttributeTopmultiplier:1.0constant:40.0],只需要注意最后两个,multiplier及constant就可以,一个代表倍数,一个代表间距,所以这就明了了,就是一个一次函数y=kx+b的形式。  

2、简述堆和栈的区别。  

堆是由程序员来分配空间及释放,栈是由编译器来分配空间及释放,引入ARC机制就是为了让系统来管理堆,这样可以减少程序员的工作量。当然重要的是栈地址比堆地址高,在测试block时常会用到堆栈知识。  

关注【成都达内】微信公众号,获取达内19大课程1元试学两周名额

上一篇:iOS程序员面试要注意的几个问题~
下一篇:10道经典高频iOS面试题目
选择城市和中心
贵州省

广西省

海南省