新闻
- 2016 年 Apple 产品预览:2016 年已经正式来到,这又是一个充满希望的一年。按照以往的路线图和预测,Apple 将在今年发布包括 iOS 10,OS X 10.12,iPhone 7 和 Apple Watch 2 等在内的一系列跨越桌面和移动领域的新产品,其中比较值得关注的是新一代的 Apple Watch。第一代手表产品因为使用场景有限而没有取得特别好的成绩,二代产品中 Apple Watch 可能会向更加轻薄的方向进化,并且配备上更多健康相关传感器。今年这些新的设备和系统将会为开发生态带来怎么样的变化,让我们拭目以待。
- iPhone 7 Plus 可能存在 256G 真土豪版本:来自供应链的消息显示,苹果今年会推出 iPhone 7 和 iPhone 7 Plus 两款产品,屏幕尺寸不变,依然是 4.7/5.5 英寸,但配置会有所提升。特别让人称叹的是 iPhone 7 Plus 还可能会有 256GB 容量的版本,这个数字已经赶上了一些桌面设备的配置了。移动设备硬件的性能和配置已经逐渐赶上桌面系统,用户也需要品质更加接近桌面的应用,但是移动设备软件的使用场景却并没有大的改变,如何在这对矛盾关系中平衡和协调,是今年值得广大 iOS 开发者们思考的问题。
教程
- 猿题库 iOS 客户端架构设计:这篇文章详细介绍了猿题库客户端架构的设计和思考。猿题库客户端借鉴了 MVVM 的思想来将界面与底层解耦,引入了新的层级来为 View Controller 瘦身,并得到了易于测试和维护的代码架构。对于有构建 app 需求的开发者,不妨可以参考这篇文章中的做法以获取灵感。
- Unit Testing for iOS :一篇关于在 iOS 中进行单元测试的入门文章。文章通过一些具体细节实现来讲述了如何从最简单的测试开始,并使用一些像是依赖注入或者 mock 等测试时的通用手法,来帮助我们构建高质量的软件。
- pomo.tv :一个收集关于 iOS,Mac 和 Swift 的开发视频的网站。视频主要来源于一些开发者会议的分享,视角很新,实效性和实用性也非常强。在学习开发知识的同时,还可以锻炼英文听力。
- Writing Better Code with Custom Subscripts in Swift :Swift 中我们可以自己定义类型的下标访问的行为,这让开发者有机会用合适的方式获得更好的代码组织和设计,这在对象结构是以行列为基础的时候显得更加有用。这篇文章通过在一个测试用例中自定义下标访问来简化代码,展示了一种可能的应用场景。
开源项目
- Filterpedia :一个开源的 iPad app,为我们展示了使用 Apple Core Image 框架制作图片滤镜的方法。图片处理是 iOS 应用中一个很常见的任务,而 Apple 也为开发者们提供了一系列便利的方式来进行相关处理。如果你正在制作一款图片处理应用的话,这个项目中很多代码和实现都可以作为参考。
- VWInstantRun :一个可以在 Xcode 中通过选定部分代码,直接运行并在控制台显示结果的插件。相比于创建一个 Playground 来说,使用这种方式来验证部分代码会更加快捷方便。如果你对实现细节感兴趣的话,作者也整理了一篇博客进行了一些说明。
- Swift-Flow :如果你在代码中使用很多状态的话,你可以会需要维护一个状态机来对代码进行简化。而 Swift Flow 这个框架可以大幅简化你在这方面的努力。Swift Flow 可以将应用的数据整理为流,并通过声明式的命令来与数据状态流进行绑定,这让我们可以轻松地维护应用内的状态。
感谢徐川对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。
评论