iOS开发周报:秋季新品发布会、Swift面试问题

jopen 9年前

 

新闻

  1. Apple 2015 秋季发布会定于 9 月 9 日召开 :按照惯例,Apple 会在秋季新品发布会上发布新款的 iPhone,不出意外的话今年将会是 iPhone 6s 以及 iPhone 6s Plus 机型。作为 Apple 彻底迈向大屏时代的作品,iPhone 6 和 6 Plus 在过去的一年中取得了巨大成功。s 系列的新机型在继承外观设计的基础上一般会加入创新性的功能。在 iPhone 5s 时我们得到了 Touch ID,而新一代 s 机型里 Apple 可能会带给我们已经出现在 Mac Book 上的 Force Touch 技术 以及相应的 API,作为一种新的交互方式,我们似乎已经可以开始思考能使用 Force Touch 来做些什么了。

  2. 除了 iPhone,还有 Apple TV :有消息称在 9 月 9 日的发布会上 Apple 会一同宣布新的 Apple TV。Apple 已经与电视节目供应商合作已久,而据称新款 Apple TV 将配置双核 A8 处理器,并可以访问 App Store,以及拥有一套源生的 API。如果这些消息都属实的话,那么对于 Apple 开发者来说会是一个进军客厅市场的好机会。不过如果考虑到国内现在对电视盒子的政策现状和 Apple TV 本身对本地化内容支持还不完善,所以 Apple 想打开国内客厅智能设备的市场仍需时日。

教程

  1. 动画框架整理 :作者整理了几个 iOS 下比较常用的开源动画框架和一些示例。UI 动画在 iOS app 中的重要性不言而喻,它在很大程度上决定用户交互的体验。有时候使用 UIView 或者 CA 动画会比较复杂的话,就可以考虑尝试用一些第三方的动画框架来简化工作。这里收录的项目基本都是成熟可靠的第三方框架,即使不会马上用上,也不妨随意看看作为积累,这样在你遇到实际问题时可能可以回想到合适的方案。

  2. Reducing FOOMs in the 非死book iOS app :虽然移动设备的配置一直在进步,但是相比于桌面设备来说,它始终是性能受限的平台,最为突出的限制就是内存。非死book 的这篇文章为我们介绍了一些确认内存耗尽崩溃的方法,以及相应的调试和解决方案。

  3. 为什么人人都该懂点LLVM :LLVM 是现在 Apple 开发使用的编译器,对于 iOS 开发者来说,了解一点 LLVM 的基本使用方式和原理会对开发有所帮助 -- 最直接的就是你能明白 Xcode 项目的 Build Setting 中那一堆东西到底都是在做什么,这篇文章介绍了一些 LLVM 的基本工作流程,可以让你对 LLVM 有个大致的了解。

  4. Swift Interview Questions and Answers :一组 Swift 从入门到高级的面试题目及答案,对于 Swift 的必备的基本概念考察还是比较完善的。因为 Swift 语言的特性,有些问题是颇有难度的。另外,想分享一句话给正在或者想要学习 Swift 的开发者:学习一门语言最快的途径就是去使用它,而不是不停看书或者文档。有些朋友会陷入越看书越绝望的情境中,诚然书籍很重要,但是我们学习一门程序语言的目的最终还是去使用它,也只有在实际使用时,才能真正学会这门语言。

  5. iOS面试题集锦 :总结了 @我就叫Sunny怎么了 在他的 博文 中的面试题目,并细心地给出了每个题目的参考答案。可以说如果你能把这些问题都答上个七七八八,可以说明你是具有担任 iOS 开发的高级职位的能力的。

  6. Swift学习: 从Objective-C到Swift :文章从比较 Swift 和 Objective-C 的一些差异和某些语法在 Swift 中的改进入手,介绍了一些 Swift 中的基本概念。对于已经掌握 Objective-C 的开发者来说,是一篇不错的快速入门的文章。

开源项目

  1. BonMot :在 Cocoa 里和 NSAttributedString 打交道是一件挺痛苦的事儿,因为相应的 API 基本都是基于 Range 的,并不很直观。BonMot 框架希望改变这个现状,这个框架为我们提供了一系列方便的方法来方便地生成 NSAttributedString

  2. Uther :一个很简单,但是很完整的 Swift 小项目,实现了收到消息后解析情感并返回对应情感的颜文字、使用动画切换颜文字以及显示并可编辑历史消息这些功能,对于初学者来说,是一个很理想的可以学习的完整项目。作者把其中用到的一些库和思路整理在了 博客 里,可以参考。

  3. Just :使用起来非常简单的 HTTP 请求库。对于一些轻量级的使用场景,用这个库来做请求可以省掉大量写 request 和解析下载得到的数据的模板代码,十分方便和干净。而框架本身虽然很简单,但是也提供了对于一个常规 HTTP 场景下足够的功能,处理认证或者 cookie 都没有问题,可以说是恰到好处的简单。