用途:端到端审查 SwiftUI 视图性能,涵盖基线测量、根因分析与具体修复建议,适用于诊断渲染缓慢、滚动卡顿、CPU/内存偏高等请求。
使用方式(按决策流程):
- 代码优先审查:用户提供代码时先审查;仅描述症状时先索取最小代码/上下文再审查;若审查无法定论,转为引导用户做性能剖析。
- 引导剖析:在 Instruments 中使用 SwiftUI 模板、Release 构建,复现相同交互(滚动、导航、动画),采集 SwiftUI 时间线与 Time Profiler,并索取 trace 导出或截图、设备/系统/构建配置。
- 分析与诊断:结合 trace/日志证据定位问题并汇总。
- 修复:缩小状态作用域、稳定列表身份、把重活移出 body、对昂贵子树使用 equatable() 或值包装、渲染前对图片降采样、降低布局复杂度或使用固定尺寸。
- 验证:请用户重新采集并与基线对比,汇总 CPU、掉帧、内存峰值差异;输出指标表(有前后对比时)、按影响排序的问题清单与修复方案及预估工作量。
常见关注点:宽泛状态变更导致视图失效风暴、列表身份不稳定(每次渲染生成 UUID)、body 中的格式化/排序/图片解码等重活、布局抖动(深层嵌套、GeometryReader、preference 链)、未降采样的大图、大树上过度动画。
限制:资料未提供具体收费、价格、平台要求或效果数据;引用文档需由用户提供后放入 references/ 目录(含 Instruments 优化、SwiftUI 性能理解与提升、卡顿理解、WWDC23 Demystify SwiftUI performance 等条目)。