工程开发
swiftui-view-refactor avatar

swiftui-view-refactor

重构 SwiftUI 视图以符合清晰架构、统一属性顺序、高效依赖注入及正确的 @Observable 状态管理。

简介

此技能为重构和标准化 SwiftUI 视图文件提供了系统性的方法。它专为在复杂 iOS/macOS 应用程序上工作的软件工程师设计,旨在维护代码质量、可读性和架构完整性。该工具强制执行特定的设计模式,例如 Model-View (MV) 模式,提倡使用原生的 SwiftUI 数据流机制(如 @State、@Environment、@Query 和基于 Observation 的状态管理)来取代过度使用 ViewModel。

  • 通过强制执行严格的属性顺序来标准化代码布局:Environment、私有常量、@State 属性、计算型非视图变量、init、body 和视图辅助函数。

  • 促进将复杂的视图 body 提取为更小、可重用的子视图或计算属性,以保持文件易于维护且组件专注。

  • 通过确保依赖项通过初始化程序传递并分配给非可选属性,强制执行严格的依赖注入实践。

  • 指导开发人员正确使用 @Observable,特别是确保引用类型在根视图中正确存储为 @State,以防止不必要的状态失效。

  • 提供关于管理大型视图文件的自动化指导,包括使用扩展和 MARK 注释来改善文件导航的最佳实践。

  • 遵循“忘记 MVVM”的哲学,确保视图保持为状态的轻量级声明,同时将业务逻辑转移到服务和领域模型中。

  • 适用于处理具有增长复杂性和 UI 债务的专业代码库的 SwiftUI 开发人员。

  • 输入:需要清理、重新排序或架构迁移的 SwiftUI 视图文件。

  • 输出:符合既定排序规则和 Model-View 模式的重构后 Swift 源文件。

  • 约束:此技能基于 UI 特定的业务逻辑属于领域服务的假设;除非明确要求或现有代码结构需要,否则不会自动创建 ViewModel。当文件超过 300 行或出现“庞大视图控制器”反模式迹象时,请使用此技能。

仓库统计

Star 数
312
Fork 数
46
Open Issue 数
1
主要语言
Vim Script
默认分支
main
同步状态
空闲
最近同步时间
2026年4月29日 06:52
在 GitHub 查看