SuperAPI AI 工具集

swift-coding-guideline

编程与开发

查看项目

更新于 10-15 23:34

技能介绍

用途:为 Xcode 与 Swift 工具链提供核心开发工作流规范,指导项目搭建、依赖管理、并发与语言/运行时实践。

主要能力:按任务读取 references/ 中最相关的参考文件;涉及 SwiftPM 或包解析时从 references/swift-package-guide.md 入手;多个参考适用时优先最具体的一个。

使用方式:应用所选参考文件的工作流,改动保持最小并限定在请求范围内,除非被要求否则避免大范围重构;包任务遵循 swift-package-guide.md 中的非 GUI SwiftPM 步骤,仅在项目基于 Package.swift 时使用 SwiftPM CLI 指引;语言/运行时主题(如 MainActor、actor、隔离)查阅对应的并发或运行时参考。编辑 project.pbxproj 时做最小定向修改,并确认新包已挂到目标与项目引用。

强制规则:Model/ 仅放表示应用或领域模型的数据结构/类,枚举放 Enum/;持久化适配器(如 UserDefaults)属 Store 类型,放 Store/(共享作用域为 Shared/Store),不得放 Service/;Shared/ 仅放真正跨功能的原语。完成前确认新类型或 API 所需 import 齐全,不依赖传递导入。属性表示状态/值,方法表示动作/变更;禁止无实际行为的 setX/updateX/applyX/moveX(to:) 包装方法;private(set) 仅在变更需由含真实行为的方法控制时使用;禁止手写属性 get/set 访问器与 willSet/didSet 观察器;计算属性只读且纯,不得有 setter、不得改状态或产生副作用(日志、I/O、持久化、修正)。框架管理的包装器(@State、@Published、@AppStorage、@Environment)允许;SwiftUI 绑定相关指引属 swiftui-coding-guideline。命名不得含下划线,使用 lowerCamelCase;模型类型统一加 Model 后缀(配置或视图状态枚举可省略);禁止使用 coordinator 作为类型、变量、属性、函数、协议、文件名或架构角色名,用户明确要求时须先直接确认。所有枚举必须独立成文件,放相关功能的 Enum/ 文件夹;唯一例外是 UserDefaultsKeys 可用单个根枚举含嵌套枚举。枚举每个 case 之间必须空行。文件文档注释的 Created by 行须写真实人类作者与日期,格式如 "Created by Martin Lasek on 18/01/2026.",新建文件用当前日期,保留已有作者行除非用户明确要求更改。多参数调用与多行 if 绑定建议纵向排版,优先用 guard 减少嵌套。

限制:资料未提供安装命令、收费、平台支持范围与效果数据;具体参考文件清单未完整列出。