IOS面试题100问,干不干IOS先收藏了,说不定那天就转IOS了。

作者Cameron Banga

摘要:本文作者对iOS开发者及设计师在面试时可能会遇到的问题进行了筛选与汇总。一方面,能够帮助HR在短时间内获取更多反馈信息,以甄选合适人选,而开发者及设计师在寻找相关工作时,也可作为参考,为面试做好万全准备。

无论是对于公司还是开发者或设计师个人而言,面试都是一项耗时耗钱的项目,本文作者Cameron Banga从编程、设计、App Store等各个方面对iOS开发者及设计师在面试时可能会遇到的问题进行了筛选与汇总。一方面,能够帮助HR在短时间内获取更多反馈信息,更好地甄选合适人选,而iOS开发者及设计师在寻找相关工作时,也可作为参考,为面试做好万全准备。

IOS面试题100问,干不干IOS先收藏了,说不定那天就转IOS了。

常见问题
  • 你昨天/这周学习了什么?
  • 你为什么热衷于软件开发?
  • 你对哪一种控制系统比较熟悉?
  • 是否参与过GitHub项目?
  • 是否参与过GitHub或其他同类型网站的iOS开源项目?
  • 请描述一下你的iOS应用开发流程。
  • 是否熟知CocoaPods?它是什么?如何运行的?
  • 请概括一下你对软件授权的理解,及其对软件开发的影响。
  • 请概括一下你在构建iOS应用时的测试过程。iOS应用如何实现对其他语言、日期格式以及货币单位的支持?
  • 请描述一下Instruments及其作用。
关于iOS技术
  • 请解释一下Handoff是什么,并简述它是如何实现iOS、Mac/网页应用互通的。
  • iCloud包含了哪些技术与服务?
  • iOS扩展是指?能否列举一些热门或常见的范例?
  • HealthKit是什么?
  • HomeKit是什么?
  • Apple Pay是什么?能否描述一下如何在应用中使用Apple Pay?
  • 请解释一下iOS应用沙盒机制。
  • VoiceOver是什么?请举例解释一下iOS中的辅助功能(Accessibility)。开发者如何使用这些功能?
  • iOS应用是如何实现后台多任务处理(Multitasking)的?
  • Game Center针对iOS游戏有哪些功能?
  • iBeacons是什么?
  • Cocoa/Cocoa Touch是什么?
  • 请概括一下Core Audio,Core Data以及Core Location各是什么。它们对iOS应用有何意义?
  • 请描述SpriteKit和SceneKit的作用。
  • Metal是什么?
  • 响应链(Responder Chain)是什么?它是如何发挥作用的?
  • 按钮和其他控制方式对哪些操作做出回应?
  • AppDelegate扮演着什么样的角色?
  • 请解释一下NSUserDefaults。就你而言,你会如何在磁盘中对数组对象进行序列化?
  • 你会如何储存用户的认证信息?
  • 请问何为Keychain服务?
  • 为什么移动设备上的缓存和压缩是不可或缺的?
  • 请解释一下~/Documents,~/Library和~/tmp。 iOS中的~属于什么目录?
  • AirPlay是如何运行的?换做是你,你会如何通过编程提高应用的实用性以及演示效果?
  • 传感器,IO以及WiFi、拨号等连接方式如何在iOS平台上运作?它们有何利用价值?请扼要地谈谈你的观点。
  • iPad 2,iPad mini 1-3,iPad Retina,iPad Air 2,iPhone 5、5S、6以及6+在硬件性能方面有何差异?这对注重性能的应用有何限制?
关于编程
  • Cocoa Touch包含什么?不包含什么?
  • 为什么Cocoa Touch的类名称是以两个大写字母开头的?
  • Swift和Objective-C分别是什么?两者相比有何不同之处,又有何联系?
  • 为什么Optional在Swift语言中非常重要?
  • 请解释一下NSError。在Swift中,什么情况下能使用NSError ,什么情况下不能?
  • 请说明如何使用Instancetype及其重要性。
  • 在Swift中,什么时候该用let,什么时候该用var?
  • 为什么map函数必不可少?该在什么情况下使用它?
  • 你会选择什么工具来追踪Bug?
  • 如果在Cocoa中发现一个Bug,你会如何处理?
  • 如果应用的新版本出现了Regression的情况,该如何补救?如何防止用户在使用过程中遇到新的Bug?
  • Objective-C的类是怎么执行的?Objective-C Runtime是如何实现的?
  • iOS是如何提高安全性,保护用户隐私信息的?
  • 应用可以下载并即刻显示数据。如何根据MVC来判断下载的最佳位置?
  • MVC对代码库(Codebase)的设计有何影响?
  • Controller Life-Cycle以及View Life-cycle分别有哪些调试方法?
  • iOS使用的是哪些设计模式(Design Patterns)?你的代码库使用的是哪些设计模式?
  • iOS提供哪些线程?如何充分利用这些线程?
  • 请简要描述一下UIScrollView的执行过程。它是如何响应手势识别(Gesture Recognizer)、多点触控(Multi-Touch)和Run Loop的?
  • 你认为iOS需要添加或改进哪些API?
关于界面
  • iPhone5、6、6+以及iPad Air 2的屏幕分辨率分别是多少?
  • 分辨率的计算单位是什么?
  • 请解释一下Interface Builder的作用以及NIB文件的概念。
  • iOS UI的图像储存类型是什么?
  • 请描述一下Storyboard和标准NIB文件的差别。
  • 设备状态栏(Device Status Bar)是什么?高度如何?是否透明?在手机通话或者导航状态下,它是如何显示的?
  • 导航栏(Navigation Bar)是什么?能否拿出你的iPhone,指出你下载的哪些应用运用了导航栏?
  • 选项卡(Tab Bar)和工具栏(Toolbar)分别是什么?两者之间有何共同点和不同点?
  • 表视图(Table View)是什么?集合视图(Collection View)又是什么?
  • 什么时候用“弹出(Popover)”属性最为合适?
  • Split-view Controller是什么?
  • 选取器视图(Picker View)适合存放哪类内容?
  • 应该在什么情况下使用标签、文本域和文本视图?
  • 分段控件(Segmented Control)的作用是什么?
  • 模态视图(Modal View)是什么?
  • iOS通知属于什么类型?
关于设计
  • iOS应用图标是指什么?请尽可能详细地描述一下。
  • 最小尺寸和最大尺寸的应用图标分别是什么样子的?
  • 应用图标能否包含透明的部分?
  • Newsstand的图标与常规应用有何不同?
  • 请解释一下启动画面(Launch Images)。
  • 自动布局(Auto Layout)的作用是什么?请概括一下它是如何运行的。
  • 设计软件时为什么要加上动画?
  • 请描述一下软件设计中的交互和Feedback有什么作用。
  • 设计iPhone和iPad应用时,应分别考虑哪些因素?
  • 请描述一下原型设计对于软件开发的意义。其作用是什么?
关于App Store
  • 应用内购买(In-App Purchases)是怎么回事?IAP能够为用户带来哪些新体验?
  • 你是否在App Store上发布过应用?能否概括一下过程?
  • iTunes Connect是什么?
  • Provisioning Profiles是指?
  • App ID是什么?
  • iOS的开发和发布签名证书有何异同?
  • 如何使用TestFlight?通过Ad-hoc发布应用的话,该如何使用UUID?
  • 应何时验证购买收据?
  • 发布iAds(苹果平台广告)有哪些要求?
趣味问答
  • 最近有没有开发什么好玩的东西?你最引以为豪的作品是什么?
  • 谈一谈你常用的开发工具都有哪些优势?
  • 你最敬佩的独立Mac或者iOS应用开发者是谁?
  • 最喜欢什么项目?哪种类型的?
  • 你觉得Xcode有哪些需要改进的地方?
  • iOS上你最喜欢哪些API?
  • 是否有最中意的错误报告?
  • 你最爱以哪种方式来检验一项新技术是否好用?
  • 为什么词典被称作Dictionaries,而不是HashTable或HashMap?
其他参考

文章来源:GitHub

原创文章,作者:ioued,如若转载,请注明出处:https://www.iamue.com/3569/

(0)
iouedioued
上一篇 2015-01-29 09:41
下一篇 2015-02-02 11:45

相关推荐

  • 交互案例:文件下载过程中的细节问题

    细节思考是交互设计师的基本素养 今天给大家分享关于文件下载过程中所需要思考的细节问题 说到文件下载,就是下载前、下载中、下载后三种状态 可是三种状态不代表以上三张页面,还有背后种种的细节思考 首先,交互…

    IxD案例 2017-03-21
  • 长大的用户体验不好,想退货了

    来都说:本周,小编的桌上多了一盆仙人球,世界各地还发生了这些小事情:钻石兄弟情、无声面包店、「自杀式」教学、午夜「决斗」、从天而降的小女孩、我明白得有些晚、长大的用户体验……01钻石兄弟情近日,美国印第安纳波利斯市一处停车场内,一位 80 岁的老爷爷遭遇抢劫。由于行动不便,拄拐杖的老爷爷只能任凭灰帽衫劫匪的摆布……这时,一个身影冲过来,朝着劫匪的后背就是一拳,劫匪被打得踉跄了几步,脑袋也有点蒙了。这个身影是 80 岁老爷爷的哥哥,今...

    2018-04-13
  • 交互设计师的60日计划之第六天

    今天去公司加了一天班,然而并没有做完该做的事情。恰好昨天看了一篇有关拖延症的文章,今天加班的过程中发觉自己已经病入膏肓...有deadline的东西可以做完,没有deadline的东西永远都做不完,这是一件很可怕的事情…

    交互专题 2015-08-20
  • 【用户体验】Chiphell论坛网友Raise3D N2打印体验实录

    以下是来自Chiphell论坛的一位@xm79 网友的使用Raise3D N2 3D打印机后的体验分享帖。让你看到Raise3D N2 3D打印机最真实的一面。之前用了好一阵工作室的makerbot 之后,也想着买一台自己的。主要每次打都要排个队,十分麻烦。而且每到出图季就要没日没夜的看守在打印机旁,通宵不起了。思量着买一台放家里吧。本来考虑着买makerbot的,因为速度是真的快,软件算法比用ultimaker系的快了一倍。但是问题就...

    2018-02-05
  • 不为动而动!动态效果在体验设计中的应用

    现在在网页和H5中使用动效已经成为一个大的趋势,随便打开一个H5都会看到一大堆跳动的元素在那里向你招手:看这里!看这里!但在这样的滚滚大潮当中我们是否应该思考一下:真的需要这么多的动效么?为什么需要?需…

    2016-07-06
  • 百货类微信服务号改版:一个“失败”的设计案例?

    整理了一个售前项目的案例,重新绘制了36个原型页面,1张思维导图,3张流程图,2张对比图,1张结构图,介绍一家百货购物中心微信服务号改版的设计。

    2017-05-07
  • 乐观派UI:真实的谎言

    我真诚地希望,这篇文章能帮助你理解乐观派UI设计背后的核心观念。乐观主义,形容词,对于未来充满希望和信心。

    2017-05-15
  • 微信红包后台系统可用性设计实践

    作者:方乐明(现任微信支付应用产品系统负责人,主要从事微信红包、微信转账、微信群收款等支付应用产品的系统设计、可用性提升、高性能解决方案设计等,曾负责 2015、2016 和 2017 年春节微信红包系统的性能优化…

    交互专题 2023-03-03
  • 能够带来更好体验的“浅交互设计”,是对人机交互设计方式的全新思考

    原文地址:https://www.smashingmagazine.com/2016/03/getting-disconnected-shallow-interaction-design-deeper-human-experiences/本文由设计夹设计研究小组 成员杨梦龙翻译校对我们的一切都被连接起来了。我的手…

    2017-08-02
  • 【Mockplus教程】重命名

    对页面和分组的重命名可以选中单个页面,然后使用F2进入名字修改状态,改完之后鼠标随便 点击其它地方即可完成修改。 对于选中页面也可以双击页面节点进入修改状态。 完整演示如下:

    交互设计 2015-09-10