domain-driven-design
Применение предметно-ориентированного проектирования с помощью ИИ
Сложные программные проекты требуют структурированного моделирования предметной области, но понимание того, когда и как применять DDD, представляет сложность. Этот навык поможет вам оценить целесообразность внедрения DDD, спланировать стратегическую архитектуру и направить к специализированным навыкам для реализации.
Скачать ZIP навыка
Загрузить в Claude
Перейдите в Settings → Capabilities → Skills → Upload skill
Включите и начните использовать
Протестировать
Использование «domain-driven-design». Использовать @domain-driven-design для оценки целесообразности внедрения полного DDD для нашей платформы электронной коммерции
Ожидаемый результат:
Результаты проверки жизнеспособности: ваша платформа электронной коммерции, вероятно, соответствует нескольким критериям из-за сложных бизнес-правил (ценообразование, инвентарь), нескольких команд и контрактов интеграции. Рекомендация: внедрить сначала стратегический DDD с ограниченными контекстами для заказов, инвентаря, платежей и доставки.
Использование «domain-driven-design». Помогите нам спланировать стратегические артефакты для нашей области здравоохранения
Ожидаемый результат:
Стратегические результаты для здравоохранения: (1) Карта поддоменов, идентифицирующая ключевые домены, такие как управление пациентами, планирование, выставление счетов; (2) Карта ограниченных контекстов с границами соответствия HIPAA; (3) Глоссарий универсального языка для медицинской терминологии; (4) ADR для критических решений.
Аудит безопасности
БезопасноStatic analysis flagged 19 potential issues including external_commands and weak cryptographic algorithms. Manual review confirms these are false positives: the @ mentions in skill references were mistaken for backtick execution, and the word 'design' was incorrectly flagged as cryptographic. This is a documentation-only skill containing no executable code, network requests, or file system operations. All findings dismissed as false positives.
Оценка качества
Что вы можете построить
Сессия архитектурного планирования
Использовать в начале нового проекта для определения целесообразности DDD и планирования границ ограниченных контекстов.
Руководство по принятию решений о рефакторинге
Оценить существующий монолит для выявления границ поддоменов и планирования постепенного внедрения DDD.
Инструмент координации команды
Установить общий универсальный язык и четкие границы ответственности между несколькими командами.
Попробуйте эти промпты
Использовать @domain-driven-design для оценки целесообразности внедрения полного DDD для нашего [описание проекта]. Запустить проверку жизнеспособности и объяснить, какие критерии выполнены.
Применить @domain-driven-design для помощи в идентификации поддоменов и ограниченных контекстов для нашей [бизнес-области]. Перечислить стратегические артефакты, которые следует создать в первую очередь.
Мы решили внедрить DDD для [конкретный ограниченный контекст]. Использовать @domain-driven-design для маршрутизации к следующим необходимым навыкам и перечислить тактические результаты для этой недели.
Наша предметная область требует аудита и истории событий. Использовать @domain-driven-design для помощи в решении, подходит ли event sourcing и какие навыки использовать для реализации.
Лучшие практики
- Начать со стратегического DDD перед погружением в детали тактической реализации
- Использовать проверку жизнеспособности для избежания избыточного проектирования простых систем
- Создавать явные артефакты на каждом этапе для обеспечения измеримого прогресса
- Направлять к специализированным навыкам вместо попытки обработки всего одним запросом
Избегать
- Применение полного DDD к простым CRUD-приложениям без сложных бизнес-правил
- Пропуск стратегического моделирования и переход сразу к проектированию сущностей
- Создание ограниченных контекстов на основе технических уровней вместо бизнес-возможностей
- Использование DDD как оправдания для избыточного проектирования без явной сложности предметной области
Часто задаваемые вопросы
Когда следует использовать этот навык?
Генерирует ли этот навык код?
Что такое проверка жизнеспособности?
К каким специализированным навыкам направляет этот навык?
Может ли это заменить воркшопы с экспертами предметной области?
Чем этот навык отличается от архитектурной консультации?
Сведения для разработчиков
Автор
sickn33Лицензия
MIT
Репозиторий
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/domain-driven-designСсылка
main
Структура файлов