2017年iOS高阶面试题

前言

因为身体原因,我不得不离开我的公司,在离开之前,我需要找到一个接手我项目的人。我出了两套题,一套是用来找接手工作的人,另一套则是对付市面上水平不高,又狮子大开口的人。

面试了两个星期,形形色色的iOS开发工程师,有会黑魔法和Runtime的工程师只要1w的,也有刚培训出来就敢要1w5的,每个人都有每个人的权利,但我还是想告诫一下,别太放肆没什么用,不出所料,没有多少个虚报工作经验的人在这套面试题下活下来。

说一下我放这套题的目的吧

一:时刻提醒自己,自己知道的东西太少,iOS能学的知识还有很多,我只是知道皮毛。

二:希望和有兴趣研究题目的人一起交流技术。我出的题可能有问题,如果有大神看出来,还请指点一二。

三:年轻人,别太浮躁,iOS没那么简单,工作经验只能说明你做的时间长。不能说明你水平高。

1.NSCache类当中是如何解决时间复杂度问题的.请说明其原理.

2.应用启动时是用怎样加载所有依赖的Mach-O文件的?

3.什么是冷启动,什么是热启动?

4.有没有做过项目的优化,请列举你所知道main()函数之前耗时的因素都有哪些,点击应用响应时间多少ms之内不会让用户察觉到

5.属性 可以与set方法和get方法 三者同时存在吗,如果不行,请说明原因?

6.Runtime机制是什么?有没有写过方法欺骗?简述一下

7.GCD和NSoperation的区别之处,请分别说一下特点?

8.Reachability是用来判断网络状态的,请简述一下其原理?

9.layoutSubviews这个方法一般在什么情况下调用的?

10.在一个表内有很多cell,每个cell上有很多个视图,如何解决卡顿问题(提示Runloop)

11.Objective-C语言中闭包是如何实现的,闭包中有什么需要注意,闭包运行环境是在堆还是在栈。

这套题的答案我有空将会更新出来,准备写一写demo研究一下。

有不对的地方还请大家指教,谢谢

这个文章好早写的了,之前挖的坑,我会找时间填上的,等我学完全栈哈~.加油

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,263评论 30 472
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,283评论 4 61
  • 要尝试一次去竭尽全力做一件事,哪怕只是为了生计或者单纯的只是为了喜欢。
    宁蓝凌阅读 222评论 0 0
  • 我们家昨天晚上吃的是菠萝炒饭。菠萝可以炒饭吗?我以前也没试过。 之所以做这个,是因为入手了一瓶橄榄油,于是在豆果美...
    记得芭蕉出槿篱阅读 383评论 0 0
  • 永远也忘记不了,非常暖心的一幕,当我好不容易找到面馆,远远看着一个姑娘正朝我这方向看,感觉是在找人,心里想难道是她...
    红糖二姐阅读 161评论 0 0