Swift/SwiftUI性能优化技能Skill swift-optimise

本技能提供针对iOS 26和Swift 6.2的Swift/SwiftUI性能优化指南,涵盖并发模式、渲染性能和动画优化,适用于采用clinic架构的移动应用开发,关键词:Swift, SwiftUI, 性能优化, iOS, 移动开发, 并发, 渲染, 动画。

移动开发 0 次安装 0 次浏览 更新于 3/18/2026

name: swift-optimise description: Swift 6.2 和 SwiftUI 性能优化,针对 iOS 26 clinic 架构代码库。涵盖 async/await 并发模式、Sendable/actor 隔离、视图/渲染性能以及动画性能,同时保留 App、Feature、Domain 和 Data 层的模块化 MVVM-C 边界。在分析或优化 clinic 模块中的 Swift/SwiftUI 行为时使用。

Apple Swift/SwiftUI 性能优化最佳实践

全面的 Swift 和 SwiftUI 性能优化指南。包含 19 条规则,分为 3 个类别,涵盖现代并发、渲染性能和动画性能。针对 iOS 26 / Swift 6.2,使用 @Observable 和 Swift 6 严格并发。

Clinic 架构合约 (iOS 26 / Swift 6.2)

本技能中的所有指导都假设采用 clinic 模块化 MVVM-C 架构:

  • Feature 模块仅导入 Domain + DesignSystem(永不导入 Data,永不导入同级功能)
  • App 目标是汇聚点,拥有 DependencyContainer、具体协调器和 Route Shell 布线
  • Domain 保持纯 Swift,定义模型以及仓库、*CoordinatingErrorRoutingAppError 合约
  • Data 拥有 SwiftData/网络/同步/重试/后台 I/O,并实现 Domain 协议
  • 读/写流默认为陈旧-验证读取和乐观排队写入
  • ViewModels 直接调用仓库协议(无默认用例/交互器层)

何时应用

在以下情况下参考这些指南:

  • 迁移到 Swift 6 严格并发(Sendable、actor 隔离)
  • 用 async/await 替换 Combine 发布者
  • 实现 @MainActor 隔离和基于 actor 的并发
  • 分解视图以减少状态失效的影响范围
  • 使用懒加载容器优化滚动和渲染性能
  • 使用 Canvas/TimelineView 进行高性能渲染
  • 在优化前使用 SwiftUI Instruments 进行分析
  • 构建高性能弹簧动画和过渡

规则类别按优先级

优先级 类别 影响 前缀
1 并发与异步 关键 conc-
2 渲染与滚动性能 perf-
3 动画性能 中等 anim-

快速参考

1. 并发与异步(关键)

2. 渲染与滚动性能(高)

3. 动画性能(中等)

如何使用

阅读各个参考文件以获取详细解释和代码示例:

参考文件

文件 描述
references/_sections.md 类别定义和排序
assets/templates/_template.md 新规则的模板