AIKraft/Skills/SwiftUI аудит производительности

SwiftUI аудит производительности

Audit and improve SwiftUI runtime performance from code review and architecture. Use for requests to diagnose slow rendering, janky scrolling, high CPU/memory usage, excessive view updates, or layout thrash in SwiftUI apps, and to provide guidance for user-run Instruments profiling when code review alone is insufficient.

dimillian official Данные

Что делает навык

Навык диагностирует проблемы производительности SwiftUI (медленный рендеринг, дерганая прокрутка, высокая нагрузка CPU/памяти) через первичный анализ кода и архитектуры. При недостатке информации он направляет пользователя к сбору профайлинговых данных в Instruments для точной валидации гипотез.

Когда применять

  • Диагностика медленного рендеринга или «дерганой» прокрутки в интерфейсах SwiftUI.
  • Анализ высокой загрузки CPU, роста памяти или зависаний приложения.
  • Выявление избыточных обновлений view или задержек layout из-за сложных иерархий.
  • Получение рекомендаций по профилированию в Instruments, когда ревью кода недостаточно.

Как работает

  1. Соберите вводные данные: код целевого view, симптомы, шаги воспроизведения, поток данных (@State, @Binding, environment) и условия запуска (устройство/симулятор, Debug/Release).
  2. Проведите code-first review, проверяя код на invalidation storms, нестабильные identity в ForEach, тяжелые вычисления в body, layout thrash и работу с изображениями в главном потоке.
  3. Если код не объясняет проблему, запросите runtime-доказательства: трейсы, скриншоты SwiftUI timeline, Time Profiler и конфигурацию устройства.
  4. Проанализируйте доказательства, сопоставив их с категориями проблем (invalidation, identity churn, layout thrash и др.), и приоритизируйте их по влиянию на производительность.
  5. Предложите целевые исправления: сужение области наблюдения, стабилизацию identity, вынос тяжелых вычислений из body, даунсемплинг изображений и упрощение layout.
  6. Запросите повторный запуск захвата для сравнения метрик (CPU, frame drops, memory peak) до и после изменений.

Примеры запросов агенту

«Проанализируй этот код SwiftUI на предмет причин медленного рендеринга и дерганой прокрутки списка.»
«У меня высокая загрузка CPU и рост памяти при скролле. Вот код view и поток данных. Найди узкие места.»
«Код-ревью не объясняет задержки layout. Помоги собрать данные для профилирования в Instruments и проанализируй трейсы.»

Что понадобится

  • Доступ к коду целевого view и описание потока данных (@State, @Binding, environment).
  • Инструменты профилирования Instruments (SwiftUI timeline, Time Profiler) для сбора runtime-доказательств.
  • Ссылки на справочные материалы: references/code-smells.md, references/profiling-intake.md, references/report-template.md.

Описание составлено по SKILL.md навыка, сверено 05.10.2026.

Как подключить

1Скачать навык
# возьмите папку навыка «swiftui-performance-audit» из репозитория: # https://github.com/dimillian/skills
2Положить папку с SKILL.md к навыкам ассистента
# положите папку навыка туда, где ассистент ищет skills: cp -r swiftui-performance-audit/ ~/.claude/skills/swiftui-performance-audit/

Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.