SuperAPI AI 工具集

swiftui-coding-guideline

编程与开发

查看项目

更新于 10-15 23:34

技能介绍

用途:在编写或生成 SwiftUI 代码时应用该规范,强调最小改动、可读性与可维护性,明确各层职责,并通过小颗粒、可注入的依赖提升可测试性。跨切面的 Swift 语言与工具规则以 swift-coding-guideline 为基线,本技能在其上定义 SwiftUI 与 UI 架构专属规则。

主要能力:给出项目结构与分层规则。可按功能划分文件夹,共享原语放在 Shared/Model 与 Shared/Service,枚举单独放 Enum 文件夹,除非能消除真实复杂度否则不新增层级。每个 SwiftUI 视图单独成文件,避免同文件内本地或嵌套视图类型。

分层职责:View 只处理声明式 UI,绑定 ViewModel 状态,不产生副作用;提取到 body 之外的视图必须作为独立 View 类型单独成文件,派生值用小计算属性。ViewModel 负责状态与编排,副作用必须写成显式方法,默认用 final class;遵循 swift-coding-guideline 的变更语义。Controller/Dispatcher 只做纯转换,无 IO、无 UI 状态。Service 封装 IO(文件系统、监视器、网络),小而单一用途,统一以 Service 为后缀。Store 是薄持久化适配器,只做序列化。

Binding:禁止直通式 Binding(get:set:),仅当 set 执行映射、校验或调用显式变更方法时才使用。

测试:针对 ViewModel 与 Service 的逻辑编写测试,用桩替换 IO 依赖,测试聚焦行为。

风格:命名明确,函数短小单一职责;注释只解释意图;格式化上属性与修饰符各自成行,属性包装器单独一行,相邻存储属性(含属性包装器)之间留空行,类型声明后与首个成员之间留空行。

避免:过度设计、隐式副作用(didSet、全局状态)、泛化 manager 类、Service/Dispatcher 中的 UI 逻辑、跨层职责。

限制:资料未提供该技能的具体安装命令、收费方式、支持平台或量化效果,暂未提供,需以官方页面为准。