SuperAPI AI 工具集

ios-dev

编程与开发

查看项目

更新于 10-15 15:13

技能介绍

用途

ios-dev 是 Apple 技能集合的起点与协调层,面向任何 iOS 或 SwiftUI 任务。它的作用是告诉使用者该使用哪个技能、在什么时机使用,从而把有观点的指导与完整的 Apple API 参考结合起来。

主要能力

  • 协调 Apple 技能集合,按任务类型路由到对应指南或 API 参考。
  • 提供一套硬性正确性检查清单,违反即视为 bug。
  • 提供主题路由表,覆盖状态管理、视图组合、性能、导航、弹窗、列表、滚动、表单、图表、动画、布局、TabView、Liquid Glass、无障碍、macOS 应用、数据持久化、测试、并发、内购、地图、健康数据、通知、App Intents/Siri、Widget、App Store 元数据、文档查找等主题。

使用方式

  • 审查现有代码:阅读代码并识别适用主题;运行正确性检查清单;用主题路由加载对应指南;用框架参考技能检索 API 正确性。
  • 改进现有代码:先运行正确性检查清单;性能问题使用 guide-swiftui-performance-audit;导航、状态或模式问题使用 Apple 的 swiftui-specialist,再查 swiftui API 参考;API 细节检索对应框架参考技能。
  • 构建新功能:先设计数据流,区分自有状态与注入状态;UI 模式与应用接线使用 Apple 的 swiftui-specialist,再查 swiftui API 参考;为最佳 diff 组织视图,尽早抽取子视图;完成前运行正确性检查清单。

正确性检查清单(硬性规则)

  • @State 属性必须为 private。
  • 仅在子视图需要修改父状态时使用 @Binding。
  • 传入的值绝不声明为 @State——否则会静默忽略更新。
  • 对 @Observable 类使用 @State,而非 @StateObject 或 ObservableObject。
  • 对需要绑定的注入 observable 使用 @Bindable。
  • ForEach 使用稳定标识——绝不对动态内容使用 .indices。
  • 每个 ForEach 元素产生恒定数量的视图。
  • .animation(_:value:) 始终包含 value: 参数。
  • @FocusState 属性必须为 private。
  • @Observable 类需标记 @MainActor——Swift 6 严格并发要求如此。
  • @Observable 类中的属性包装器(@AppStorage、@SceneStorage、@Query)需标记 @ObservationIgnored——它们与宏冲突并导致编译错误。
  • body 中不得有业务逻辑——使用 .task、.onChange 或方法。
  • 除非确实无法避免,否则不使用 AnyView——用更好的组合方式解决。

操作规则

  • SwiftUI 与 UIKit 均为一等公民,按任务选择;桥接时注意状态同步、生命周期与动画/环境边界。
  • 不强制特定架构(MVVM、VIPER、MV、TCA 等),鼓励将业务逻辑与视图分离,但不规定方式。
  • 对 UI 工艺保持高标准:应用应感觉是当代的——流畅、设计导向、有生命力;注重细节。自定义组件、新颖交互与自定义 Metal 着色器在服务体验时均可使用;系统默认是下限而非上限。
  • 不规定工艺如何交付——没有内部风格、没有“Apple 认可”的把关、没有美学清单。设计方向由使用者按应用自行判断。hig 与 ios-liquid-glass 技能记录系统提供的内容,是参考而非风格强制。当任务是设计屏幕或使其好看时,没有文档可路由——凭自身品味设计;仅在需要 API 机制或事实性下限(如点击目标尺寸)时检索参考。
  • 性能优化以有理由的建议呈现,而非一刀切要求。
  • 需要精确 API 细节时,检索框架参考技能——它们包含完整的 Apple 文档。

适用场景

任何 iOS 或 SwiftUI 任务,包括代码审查、代码改进、新功能构建,以及需要定位正确 Apple API 文档或最佳实践指南的场景。

限制

资料未提供该技能的收费、价格、平台支持范围或效果保证等信息。