新闻
- Apple 正在准备自有云架构 McQueen :依赖移动终端的力量,Apple 现在已经是全球最大的云服务提供商之一。包括 App Store,iCloud,Apple Music 等在内的服务每天有数以亿计的用户在使用。业内人士报道,Apple 最近开始了一个叫做 “Project McQueen” 的项目,试图开始构建企业自由的云架构。在之前,Apple 的云服务大部分都依赖于 Amazon,并使用了某些 Microsoft 和 Google 的服务。显然 Apple 对于现状并不太满意,特别是用户在加载图片或是下载视频时可能面临的速度较慢的问题,已经成为了 Apple 云服务发展的瓶颈。
- App Analytics 分析周报上线:对于 app 下载和评论的管理一直是 iTunes Connect 的弱项,不过最近一两年来 Apple 一直这方面进行了改进,包括在 iTunes Connect 中添加分析模块,更好的 Crash 报告等。最近,Apple 为开发者提供了周报邮件,以帮助开发者追踪 app 的下载和评分状况。有需要的开发者可以在 iTunes Connect 中进行订阅。
教程
- What’s new in Swift 2.2 :Swift 2.2 即将上线,在新版本中,很多原有写法已经失效,一些新的内容被加入到语言中,其中包括弃用 C 风格的循环,移除
var
修饰的函数参数,使用#selector
来定义方法 Selector 等等。这篇文章对 Swift 2.2 中所有变化进行了详细说明,包括现有用例以及对应方法。如果你正在项目中使用 Swift 的话,相信本文将对顺利迁移到 Swift 2.2 版本有所帮助。 - iOS 冰与火之歌番外篇 - App Hook 答疑以及 iOS 9 砸壳:关于 iOS 安全系列的最新文章。上架 App Store 的 app 会被进行加壳处理,我们想要对这些 app 进行 hook 或者探索,第一步就是要进行去壳。本文主要介绍了 iOS 上砸壳 (Dumpdecrypted),签名及重新安装的一些技巧。
- 初探 Swift Sequences 和 Generators :Swift 的
GeneratorType
和SequenceType
是两个非常强大的协议。如果你认为它们只是被用来构建 for…in 循环的话你就大错特错了。它们组合起来其实包含了函数式编程的很多思想,可以作为基本的容器单元进行使用。如果你对此有兴趣的话,可以通过这篇文章进行初步了解。 - VIPER to be or not to be? : 一篇关于 VIPER 架构的讨论。Apple 官方推荐的 MVC 架构可能是绝大多数 iOS app 的选择,MVC 架构虽然上手非常容易,但是精通却相对困难。对于一些比较庞大的项目,MVC 往往无法满足可维护性和可扩展性,因此才会有对其他各种开发架构的探索。VIPER 就是一个通过组件职责进行划分的构建框架,如果你的 app 规模较大,使用 VIPER 可能会有助于 app 模块的明确化,本文在这个方向对 VIPER 的适用场景和一些实践进行了说明。
开源项目
- PeekPop :iPhone 6s 和 6s Plus 支持 3D Touch 技术,并提供了一种全新的 Peek & Pop 交互方式,可以让用户对内容进行快速预览,并提供新的入口。但是这个特性被限制在了新设备上,这使得绝大多数用户无法享受到 Peek & Pop 所带来的便利。该框架通过检测用户手势中的按压半径,在老设备上模拟 3D Touch 的行为,为这些设备也带来了类似 Peek & Pop 的体验。该框架 API 设计上与 Apple 的现有体系十分类似,因此转换起来也非常方便。
- SPTPersistentCache :Spotify 最近正在陆续将他们的 iOS 组件进行开源,这次为我们带来了一个缓存管理的框架。SPTPersistentCache 提供了一整套持久化缓存的解决方案,它将缓存 header 信息存储到分立的缓存文件中,并使用这些信息进行过期管理和快速查找。同时该框架还提供了一个配套的 OS X 应用,以帮助开发者确认当前缓存系统中的内容。
- Bolts in Swift :在 Objective-C 时代, Bolts 就是非常常见的任务管理框架,它提供了一种类似 Promise 的方式来让我们避免复杂的异步任务处理。Bolts-Swift 将类似的内容移植到了 Swift 上,使用 Swift 的开发者现在也可以利用类似于原来 Bolts 的 API 进行异步任务管理。采用任务和 Promise 的方式来编写异步代码,有助于提高代码的可读性和维护性。如果你还没有开始尝试做类似的事情,现在就是一个进行实践的好机会。
感谢徐川对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们。
活动推荐:
2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。
评论