mcpField
I
ios-dev

ios-dev

github.com/prisma-labs-dev开发349721 次安装5 周前更新
代码仓库

关于 ios-dev

ios-dev 是 Apple 开发技能的协调入口,帮助开发者为 iOS 工作选择指南和 API 参考。它覆盖代码审查、改进和功能开发流程,且不强制采用特定架构。

主要功能

  1. 01将任务路由到相关 Apple 技能
  2. 02SwiftUI 与 UIKit 指引
  3. 03按主题组织的 API 参考索引
  4. 04代码审查正确性清单
  5. 05审查与功能开发工作流

适用场景

  1. 01为 SwiftUI 功能选择参考资料
  2. 02审查现有 iOS 代码
  3. 03查找开发主题对应的 API
  4. 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 文档

任务工作流

审查现有代码
  1. 阅读代码并确定适用的主题
  2. 运行下方的正确性检查清单——违反项均为错误
  3. 使用主题路由器为每个主题加载相关指南
  4. 如需验证 API 正确性,搜索相应的框架参考技能
改进现有代码
  1. 首先运行正确性检查清单
  2. 针对性能问题:使用 guide-swiftui-performance-audit
  3. 针对导航、状态或模式问题:使用 Apple 的 swiftui-specialist(随 Xcode 27 一同发布;已导出到用户技能目录),然后查阅 swiftui API 参考
  4. 针对 API 细节:搜索相应的框架参考技能
构建新功能
  1. 首先设计数据流——确定哪些状态由本方持有,哪些状态由外部注入
  2. 针对 UI 模式和应用接线:使用 Apple 的 swiftui-specialist,然后查阅 swiftui API 参考
  3. 针对 API 细节:搜索相应的框架参考技能
  4. 组织视图以实现最佳差异计算——尽早提取子视图
  5. 完成前运行正确性检查清单

主题路由

指南列提供具有明确观点的简短模式指南。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)
列表和 ForEachswiftui-specialist(Apple,Xcode 27)swiftui(list.md)
ScrollViewswiftui-specialist(Apple,Xcode 27)swiftui(scrollview.md)
表单和输入—swiftui(form.md、textfield.md、picker.md、toggle.md、slider.md)
图表guide-swiftui-chartsswiftui(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)
TabViewswiftui-specialist(Apple,Xcode 27)swiftui(tabview.md)
Liquid Glass—ios-liquid-glass
辅助功能swiftui-specialist(Apple,Xcode 27)hig(a11y/人体工程学事实)
macOS 应用guide-macos-spm-packagingswiftui、uikit
数据持久化guide-swiftdataswiftdata
测试guide-swift-testingswift-testing、xcuitest
并发guide-swift-concurrencyswift-concurrency
App 内购买—storekit
地图—mapkit
健康数据—healthkit
通知—usernotifications
App Intents / Siriapp-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