用途:该技能是一个智能路由,在涉及 Swift/iOS 开发时提供代码风格、架构与最佳实践的关键规则,并指向完整文档。触发场景包括处理 .swift 文件、讨论 ViewModel/Coordinator/架构、重构或格式化代码,关键词有 swift、swiftui、mvvm、async、await、refactor。
主要能力与关键规则:不得裁剪仅含空白的行,需原样保留带空格或制表符的空行;不得编辑标记为 Sourcery/SwiftGen 生成的生成文件;UI 中不得使用硬编码字符串,须使用本地化常量 Loc.*;除非明确要求否则不加注释;重构时须同步更新测试与 mock;新功能使用 feature flag。完成任务前需核对空白行、硬编码字符串、测试与 mock、生成文件、feature flag、注释等清单。
常见模式:MVVM ViewModel 使用 @MainActor 与 ObservableObject;Coordinator 用 @Published route 与 Route 枚举;依赖注入通过 Container 的 Factory 与 @Injected 使用;ViewModel 初始化保持轻量,重活放到 .task;异步按钮优先用 AsyncStandardButton 自动管理加载状态、错误提示与触感反馈。
项目结构与风格:Anytype/Sources 下分 ApplicationLayer、PresentationLayer、ServiceLayer、Models、CoreLayer;缩进 4 空格,类型用 PascalCase,变量与函数用 camelCase,扩展命名 TypeName+Feature.swift,属性顺序为 @Published/@Injected → public → private → computed → init → methods,避免嵌套类型,枚举用显式 switch。
限制与注意:完整指南见 Anytype/Sources/IOS_DEVELOPMENT_GUIDE.md;历史教训包括未经请求不得提交、删除文件前先 ls 并逐个删除、重构后搜索旧名并更新测试/mock/DI。相关技能有 swiftui-patterns-developer、swiftui-performance-developer、localization-developer、code-generation-developer、design-system-developer。