2020年面向高级开发人员的iOS面试题总结(附答案)
前言: 这是许多硅谷公司用来衡量iOS候选人资历水平的一系列问题。 这些问题涉及iOS开发的各个方面,旨在触及对平台的广泛理解。 毕竟,高级开发人员应该能够从头到尾地发布完整的iOS产品。 这绝不是一个详尽的列表,但它可以帮助你为即将到来的技术iOS面试做准备。 目录 你使用的最新版本的iOS是什么?你喜欢什么,为什么? 什么是iOS应用程序,您的代码适合哪里? 你喜欢或不喜欢什么Swift特性?为什么? 内存管理在iOS上如何处理? 你对单身人士有什么了解?你会在哪里使用一个,你不在哪里? 你能否解释一下Delegate和KVO有什么不同? iOS应用中通常使用哪些设计模式? 你知道除了常见的可可模式外还有哪些设计模式? 你能否解释并展示SOLID原则的例子? 你有什么选择在iOS上实现存储和持久性? 你有什么选择在iOS上实现网络和HTTP? 如何以及何时需要在iOS上序列化和映射数据? 在iOS上布置UI有什么选择? 你将如何优化动态大小的表或集合视图的滚动性能? 你将如何在iOS上执行异步任务? 你如何管理依赖关系? 你如何在iOS上调试和配置文件? 你有TDD经验吗?你如何在iOS上进行单元和UI测试? 你编码审查和/或配对计划? 在下面的章节中,我们将讨论每个问题,背后的原因,预期的答案,以及可能为面试官带来危险的答案。 1.你使用的最新版本的iOS是什么?你喜欢什么