iOS精选面试题

作者: 落影loyinglin | 来源:发表于2018-07-16 10:22 被阅读1232次

    前言

    为防止背题,大部分题目不设标准答案,重点考察面试者的基础知识和思维逻辑,答案的提示见后面。

    正文

    题目1、举例两个遇到过印象深刻的外网Crash,并介绍如何发现、定位、解决;

    题目2、举例两个性能问题的优化,并介绍如何发现、定位、解决以及原理;

    题目3、介绍Objective-C的Runtime机制,并介绍在业务实际应用的例子;

    题目4、苹果是如何保证iPhone只安装来自App Store的App?

    题目5、你的App如何同后台进行通信?其通信过程包括哪些步骤;

    题目6、你有1元、5元、7元三种硬币,求一种方法,用最少的硬币凑出m元;(m∈[100, 1000])

    题目7、产品希望实现一个功能,将10~100张图片直接拼成1个视频,你会如何实现?

    参考答案

    1、Tips

    题目几个隐含点:
    1、Crash上报方式,考察业务如何监控Crash;
    2、Crash定位,考察iOS基础知识:常见Crash类型、Crash日志分析能力(符号化、堆栈分析等);
    3、Crash解决,是否为适当的解决方式,如何保证类似问题不再复发;

    2、Tips

    题目几个隐含点:
    1、性能问题的发现,考察常见工具的使用,包括Xcode的Debug SessionInstruments
    2、CPU占用和内存占用,要么是实现方案的优化,要么是空间和时间互换,以优化内存和CPU占用;
    3、GPU占用,如何定位和优化GPU占用;
    4、加分项:耗电量分析;
    5、原理:优化前后的方案对比,考察实现方案的算法分析能力以及基础的计算机体系结构知识;

    3、Tips

    Runtime是OC的特性,题目是为考察OC的了解程度;
    具体的应用过程要考虑到稳定性、性能消耗、可扩展性等。

    4、Tips

    苹果的证书机制,考察对苹果生态的了解以及基础的不对称加密;
    Certificate、Provisioning Profile、App ID、代码签名等。

    5、Tips

    两方面考察:
    1、网络通信过程,对TCP/IP和HTTP的了解;
    2、APP的网络层和业务层如何通信;

    6、Tips

    贪心或者动态规划。

    7、Tips

    实现方案有几个考察点:
    1、技术选型,从业务的角度出发,细化产品的要求,比如使用场景、用户需求等,再决定用哪些技术解决问题;(Tips:待选方案有AVFoudation、GPUImage等)
    2、实现细节,如何保证使用过程中内存不占用过大、CPU使用不过高;

    总结

    题目纯粹原创,没有参考任何面试题。
    真正面试的过程,会有更加复杂和细节的题目。
    就面试而言,有时候能发挥出150%的实力,有时候却只能发挥出50%。
    我对提前做面试题的看法:面试就如同学生时代的考试,有些人平时学习认真,裸考也能名列前茅;有些人平时懒一些,考前拼几周也能获得不错的成绩。

    如果你觉得面试题get到你的兴奋点,证明我们是有缘之人,欢迎投递简历: loying$foxmail.com($替换为 @) ,或者私信。

    来自一个呕心沥血,恳求各路大牛赏赐一份简历的码农

    相关文章

      网友评论

      本文标题:iOS精选面试题

      本文链接:https://www.haomeiwen.com/subject/saevpftx.html