Swift (iOS/macOS) 新框架人气飙升
iOS 和 macOS 的开发生态系统持续迅猛发展,到 2025 年,一个吸引了全球数千名开发者关注的框架脱颖而出。这就是 Swift Composable Architecture (TCA) —— 一个用于在 Swift 中构建可靠、可测试且可扩展应用的现代工具。过去半年内,其受欢迎程度增长了一倍多,GitHub 上的星标数已超过 15,000 个。
什么是 TCA,为何备受关注?
Swift Composable Architecture(简称 TCA)是一个由 Point-Free 公司创建的开源框架。它为开发者提供了一种统一且可预测的方式来管理应用状态、处理操作以及构建复杂的界面。与传统的 MVC 甚至现代的 SwiftUI 不同,TCA 提供了清晰的结构,这在大型商业项目中尤其受到重视。
框架的主要特点
- 模块组合:TCA 允许将应用拆分为独立、可复用的模块(Reducers),这些模块可以轻松组合,简化了代码的维护和测试。
- 单向数据流:所有状态变更都通过集中的 Store 处理,使应用逻辑透明且可预测——杜绝意外的数据突变。
- 内置可测试性:得益于严格的架构,每个 reducer 都可以独立进行测试。Point-Free 甚至发布了专门用于编写 TCA 测试的库。
- 与 SwiftUI 深度集成:TCA 专为与声明式界面 SwiftUI 配合使用而设计,同时也支持 UIKit 以实现向后兼容。
- 副作用与异步:该框架提供了便捷的工具来处理 async/await、Combine 以及其他异步模式,降低了副作用产生的风险。
为什么 TCA 现在如此流行?
几个因素同时出现。首先,Swift 社区正逐渐远离臃肿的架构,转向更函数式的方法。其次,Apple 正在积极推广 SwiftUI,但其内置的状态管理工具(例如 @State 或 @ObservedObject)在处理大型项目时并不总能胜任。TCA 填补了这一空白。
此外,Swift 6.0 的发布加强了对严格数据安全(Strict Concurrency Checking)的支持,这使得 TCA 更具吸引力:该框架从设计之初就考虑到了线程安全,并且完美契合了新的开发范式。
使用案例与反馈
Airbnb、Lyft 和 SoundCloud 等大型公司已经在其 iOS 项目中采用了 TCA。开发者们表示,调试时间减少了 30-40%,代码也变得更加简洁。Point-Free 的博客定期发布教程和示例,有助于快速学习。
“我用两周时间将我的应用从 MVVM 重写为 TCA,”一位来自圣彼得堡的 iOS 开发者 Alexey 分享道。“从那以后,bug 数量减少了一半,添加新功能也变得容易得多。”
如何开始使用 TCA?
开始使用只需通过 Swift Package Manager 添加该包即可。最低版本要求为 iOS 16.0,macOS 13.0。在官方网站 pointfree.co/swift-composable-architecture 上,有免费的文档和一系列视频教程,可帮助您掌握该框架。