新闻
- Apple Music 入华,iTunes Store 电影图书业务也在中国区开业:在之前的周报中我们就提到过音乐版权清理和 Apple Music 之间可能的关系,本周 Apple Music 以低调姿态在国内开始提供服务。个人每月 10 元和家庭共享每月 15 元的价格可以说非常低廉。与此同时,iTunes 的电影和图书的销售也同时开始了。相信这一系列举动将对音乐、电影、图书等作品在国内的版权正规化起到极大的推进作用。
- OSX 10.11 正式发布:新版本的 OSX 操作系统和国庆节一起来到了我们身边。对比 Yosemite,El Captain 的升级力度和新功能可能没有那么突出。基本可以将 El Captain 看做像是 Snow Leopard 或者 Mountain Lion 这样的细节打磨升级。新版本操作系统的流畅性和稳定性确实有明显的上升,如果你还在使用像是 OSX 10.9 这样的系统的话,十分建议升级。
- Apple 调整中国区定价政策,app 销售开始收取交易税:本周开发者们收到了来自 Apple 的一封邮件,从 9 月 30 日起,App Store 将向中国的开发者收取交易税,并且将在扣除交易税后再跟开发者三七分成,同时日本区也将适用新的消费税政策。日本区的消费税从 5% 上涨到 8% 是明面的,但是中国区的税率并没有被提及。从 Apple 提供的价格表来看,最终开发者从中国区得到的分成似乎会减少 2% 左右。在这两个地区有 app 和内购销售的开发者不要忘了去签订新的合约。
教程
- 给女朋友的 iOS 开发教程 iOS With Girlfriend :来自国内开发者 Kevin 的一个系列视频教程,从设计入手讲述如何开发一个 iOS 应用。现在视频还在连载中,前面三期着重讲解了 iOS 应用的设计理念和一些原则,比较适合刚起步不久的独立开发者观看。
- Tuples + Pattern Matching :Swift 中的 switch 语句其实是基于模式匹配的,Swift 的模式匹配非常灵活,对于像多元组我们也可以使用模式匹配来控制代码的执行。这篇文章为我们介绍了 Swift 中使用 tuple 来做模式匹配的一些例子。
- 10 Ways to Write Cleaner Code :对整洁代码的追求应该是永无止境的,这篇文章并不是专门针对 iOS 开发的,而是介绍了十种对于一般的开发中应该考虑遵守的代码规范。读者可以逐条对比自己日常工作中的习惯来看看,有则改之,无则加勉,以求写出更漂亮的代码。
开源项目
- Async :GCD 是 iOS 开发中处理多线程任务的一个简单易用的特性,但是很多时候使用 GCD 时其实都是一些很模板化的代码。Async 这个项目对 GCD 进行了一些封装,使得在线程间的跳转和调用更加简洁清晰。这不仅有助于我们写出和维护简洁的代码,也能帮助理解线程之间的关系,减少 bug 的产生。
- Eureka :在 iOS 应用中构建表单并不是十分困难,但是却相当花时间。在 iOS 9 中引入 stack view 之前,开发者基本只能使用 table view 来构建表单。 XLForm 是 Objective-C 时代 xmartlabs 开源的一款很好的表单构建框架,而他们最近发布了对应的 Swift 版本框架 - Eureka。与自己构建表单相比,Eureka 提供了绝大多数情况下可以使用到的表单项组合,可以为开发者节省大量时间。
- SourceKitten :和 Xcode 以及 Swift 打交道的开发者应该对 SourceKit 都不陌生,最近一年隔三岔五 Xcode 就会提示我们 SourceKit 挂了,然后代码高亮,自动补全什么的就统统没有了。SourceKit 可以说是 Xcode IDE 的核心,它负责对项目和源文件进行语法分析,创建 AST (抽象语法树),然后为 IDE 的操作层和 UI 提供一切支援。SourceKitten 这个框架可以让我们和 SourceKit 打交道,完成一些和语言相关的事情,比如获取所有 token,解析 AST 等等。在制作 Xcode 插件或者一些工具的时候,这个框架会很有用。比如 CocoaDocs 在解析注释文档时所依赖的 jazzy 就使用了这个库进行 AST 获取。
感谢徐川对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。
评论