用途:当 SwiftUI 视图文件里混入逻辑需要抽离、需要在 MVVM、TCA、Apple 原生模式或 Coordinator 之间做选择、重构视图以分离关注点、让 SwiftUI 代码可测试,或决定使用哪个属性包装器(@State、@Environment、@Bindable)时使用本技能。
主要能力:提供架构决策树,按应用复杂度、团队规模、可测试性需求给出选择依据;给出重构工作流与逻辑归属判断;说明 Apple 原生模式(iOS 26+)中的 @Observable 数据模型、State-as-Bridge 处理异步边界、属性包装器决策树;介绍 MVVM 的 ViewModel 作为展示适配器及常见错误;介绍 TCA 的 State/Action/Reducer/Store 结构与取舍;介绍 Coordinator 模式处理复杂导航与深链。
使用方式:以提问方式触发,例如“模型视图文件里有很多逻辑代码,怎么抽离”“该用 MVVM、TCA 还是 Apple 原生模式”“如何让 SwiftUI 代码可测试”“格式化与计算该放哪”“该用哪个属性包装器”。技能会按决策树给出对应部分。
适用场景:中小型新项目选型、从 UIKit 迁移、复杂应用需要严格可测试性与团队一致性、复杂导航与多入口场景。
限制:资料未提供安装命令、价格、平台支持范围与具体版本要求;TCA 为第三方库,非 Apple 官方支持,存在样板代码与学习曲线;是否采用需结合项目实际判断。