关于 ios-dev
ios-dev 是 Apple 开发技能的协调入口,帮助开发者为 iOS 工作选择指南和 API 参考。它覆盖代码审查、改进和功能开发流程,且不强制采用特定架构。
主要功能
- 01将任务路由到相关 Apple 技能
- 02SwiftUI 与 UIKit 指引
- 03按主题组织的 API 参考索引
- 04代码审查正确性清单
- 05审查与功能开发工作流
适用场景
- 01为 SwiftUI 功能选择参考资料
- 02审查现有 iOS 代码
- 03查找开发主题对应的 API
- 04按正确性规则检查代码
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ prisma-labs-dev/ apple-skills --skill ios-dev安装后在 Claude Code 中输入/ios-dev确认已加载。
详细介绍
iOS 开发
从这里开始。此技能协调 Apple 技能集合——它会告诉你该使用哪个技能以及何时使用,让你既能获得明确的指导,也能查阅完整的 API 参考。
操作规则
- SwiftUI 和 UIKit 都是一流选择——根据任务选用合适的方案。只要 UIKit 能带来更多控制力或灵活性,就可以选择 UIKit;在两者之间搭桥时,注意状态同步、生命周期以及动画和环境边界。
- 不要强制采用特定架构(MVVM、VIPER、MV、TCA 等)——鼓励将业务逻辑与视图分离,但不要规定具体做法
- 对 UI 工艺保持高标准:应用应该具有当代感——流畅、注重设计、充满活力。关注微小细节。只要能提升体验,自定义组件、新颖交互和自定义 Metal 着色器都可以采用;系统默认只是底线,而非上限。
- 不要规定如何呈现这种工艺——不要设定统一风格,不要以“Apple 认可”作为门槛,也不要提供审美检查清单。设计方向由你根据每个应用自行判断。
hig和ios-liquid-glass技能介绍了系统提供的内容;它们是参考资料,不是风格规范。如果任务是设计屏幕或让界面更美观,没有可供转交的文档——依靠自己的审美进行设计;仅在需要 API 机制或事实下限(例如触控目标尺寸)时,才搜索参考资料。 - 将性能优化作为有依据的建议提出,而不是一概而论的要求
- 需要准确的 API 细节时,搜索框架参考技能——其中包含完整的 Apple 文档
任务工作流
审查现有代码
- 阅读代码并确定适用的主题
- 运行下方的正确性检查清单——违反项均为错误
- 使用主题路由器为每个主题加载相关指南
- 如需验证 API 正确性,搜索相应的框架参考技能
改进现有代码
- 首先运行正确性检查清单
- 针对性能问题:使用
guide-swiftui-performance-audit - 针对导航、状态或模式问题:使用 Apple 的
swiftui-specialist(随 Xcode 27 一同发布;已导出到用户技能目录),然后查阅swiftuiAPI 参考 - 针对 API 细节:搜索相应的框架参考技能
构建新功能
- 首先设计数据流——确定哪些状态由本方持有,哪些状态由外部注入
- 针对 UI 模式和应用接线:使用 Apple 的
swiftui-specialist,然后查阅swiftuiAPI 参考 - 针对 API 细节:搜索相应的框架参考技能
- 组织视图以实现最佳差异计算——尽早提取子视图
- 完成前运行正确性检查清单
主题路由
指南列提供具有明确观点的简短模式指南。API 参考列提供完整的 Apple 文档,并以便于 grep 的 Markdown 格式呈现——使用 apple-docs-index 查找各项内容所属的框架。
| 主题 | 指南 | API 参考 |
|---|---|---|
| 状态管理 | swiftui-specialist(Apple,Xcode 27) | swiftui(state.md、binding.md、observation.md、environment.md) |
| 视图组合 | — | swiftui(view-protocol.md) |
| 性能 | guide-swiftui-performance-audit | — |
| 导航 | swiftui-specialist(Apple,Xcode 27) | swiftui(navigationstack.md、navigationsplitview.md、navigationlink.md) |
| 工作表和模态框 | swiftui-specialist(Apple,Xcode 27) | swiftui(sheet.md、inspector.md、alert.md、confirmationdialog.md) |
| 列表和 ForEach | swiftui-specialist(Apple,Xcode 27) | swiftui(list.md) |
| ScrollView | swiftui-specialist(Apple,Xcode 27) | swiftui(scrollview.md) |
| 表单和输入 | — | swiftui(form.md、textfield.md、picker.md、toggle.md、slider.md) |
| 图表 | guide-swiftui-charts | swiftui(chart.md、charts-overview.md) |
| 动画 | swiftui-specialist(Apple,Xcode 27) | swiftui(swiftui-overview.md) |
| 布局 | swiftui-specialist(Apple,Xcode 27) | swiftui(geometryreader.md、grid.md、hstack.md、vstack.md、zstack.md、spacer.md) |
| TabView | swiftui-specialist(Apple,Xcode 27) | swiftui(tabview.md) |
| Liquid Glass | — | ios-liquid-glass |
| 辅助功能 | swiftui-specialist(Apple,Xcode 27) | hig(a11y/人体工程学事实) |
| macOS 应用 | guide-macos-spm-packaging | swiftui、uikit |
| 数据持久化 | guide-swiftdata | swiftdata |
| 测试 | guide-swift-testing | swift-testing、xcuitest |
| 并发 | guide-swift-concurrency | swift-concurrency |
| App 内购买 | — | storekit |
| 地图 | — | mapkit |
| 健康数据 | — | healthkit |
| 通知 | — | usernotifications |
| App Intents / Siri | app-intents-specialist、app-intents-whats-new-27(Apple,Xcode 27) | — |
| 小组件 | — | widgetkit |
| App Store 元数据 | apple-aso | — |
| 查找文档 | apple-docs-index | — |
正确性检查清单
以下是硬性规则——违反即为错误:
-
@State属性为private - 仅当子视图需要修改父视图状态时才使用
@Binding - 传入的值绝不声明为
@State——否则会静默忽略更新 - 对
@Observable类使用@State,而非@StateObject或ObservableObject - 对需要绑定的注入式可观察对象使用
@Bindable -
ForEach使用稳定标识——动态内容绝不使用.indices - 每个
ForEach元素生成固定数量的视图 -
.animation(_:value:)始终包含value:参数 -
@FocusState属性为private -
@Observable类标记为@MainActor——Swift 6 严格并发要求如此 -
@Observable类中的属性包装器(@AppStorage、@SceneStorage、@Query)标记为@ObservationIgnored——它们与宏冲突并导致编译器错误 -
body中不包含业务逻辑——改用.task、.onChange或方法 - 除非确实无法避免,否则不使用
AnyView——通过更好的组合方式解决
相关技能
系统 API 参考:
/ios-liquid-glass— Liquid Glass API 参考
工作流指南:
/swiftui-specialist— Apple 的 SwiftUI 最佳实践(Xcode 27):结构、数据流、环境、ForEach 标识、本地化、软弃用/swiftui-whats-new-27— iOS 27 SwiftUI 变更(@State 宏、@ContentBuilder、可重新排序、工具栏溢出)/guide-swiftui-charts— 标记、坐标轴、选择、样式、无障碍功能/guide-swiftui-performance-audit— 诊断并修复性能问题/guide-swift-testing— Swift Testing 模式、异步测试、常见 Agent 错误/guide-swift-concurrency— 并发模式、参与者、诊断、错误模式/guide-swiftdata— SwiftData 模式、谓词、CloudKit 限制/guide-macos-spm-packaging— 使用 SwiftPM 构建 macOS 应用
实用工具:
/apple-docs-index— 查找合适的 Apple 文档/apple-aso— App Store 优化
评论
支持 Markdown