О чём курс

Чем теснее связь между разработкой программного обеспечения и его бизнес-стратегией, тем проще будет поддерживать и развивать систему для удовлетворения будущих потребностей бизнеса, что в конечном итоге приведет к более успешным проектам программного обеспечения.

Предметно-ориентированное проектирование (DDD) предлагает общий подход к обеспечению большей гибкости и модифицируемости программных систем на основе более тщательного исследования предметной области и отражения ее структуры в разрабатываемой системе. Применение DDD позволяет снизить риск неудач в программных проектах за счет выстраивания более эффективной коммуникации между бизнес-заказчиком и командой разработки.

Практики Domain Driven Design делятся на две группы: стратегическую и тактическую.

Стратегические инструменты DDD используются для нахождения общего языка и целей разрабатываемой системы. На основе открытых общих целей, принимаются архитектурные решения высокого уровня: декомпозиции систем на компоненты и определения способов их интеграции на основе выстраивания общего понимания, как разрабатываемая система будет обеспечивать удовлетворение потребностей бизнеса.

Тактические паттерны DDD позволяют нам писать код таким образом, чтобы он отражал предметную область, отвечал ее целям и говорил на языке бизнеса.

На курсе вы узнаете, какие инструменты и практики DDD помогают в построении корпоративных систем со сложной бизнес-логикой и примените стратегические паттерны для декомпозиции предметной области в разрабатываемой системе. Для дальнейшего проектирования и реализации выделенных в результате декомпозиции компонентов, “ограниченных контекстов” в терминологии DDD, используем тактические паттерны DDD, в первую очередь Агрегаты. В основе материалов курса лежат реальные примеры разработанных систем.

Значительное время уделяется рассмотрению инструментов DDD для понимания задач бизнеса и решению практических задач, что даст вам возможность закрепить полученные знания на практике и отработать навыки применения стратегического дизайна и тактического моделирования.

Цели

После обучения участники будут:
  • Понимать, как инструменты DDD помогают реализовать сложные программные системы;
  • Уметь применять стратегические практики DDD для декомпозиции систем;
  • Уметь применять тактические паттерны DDD в рамках отдельного ограниченного контекста;
  • Уметь эффективно моделировать Агрегаты;
  • Использовать Доменные События для интеграции ограниченных контекстов.
  • Целевая аудитория

    Разработчики разных уровней (от Junior до Senior), которые обладают знаниями ООП и ООД принципов, а также базовыми знаниями архитектурных паттернов.

    Предварительная подготовка

  • Участие в проектах разработки ПО от 1 года на роли разработчика, архитектора или аналитика.
  • Желательно знание UML.
  • Для кого

    Разработчик Разработчик
    Архитектор ПО Архитектор ПО
    Системный аналитик Системный аналитик

    Улучшаемые навыки

    Архитектурные стили
    Паттерны DDD
    Доменные события
    Микросервисная архитектура
    Event Sourcing
    CQRS

    Инструменты

    Miro Miro

    Расписание курсов

    15.07.2025 - 07.08.2025

    16:00-19:00
    Дата и время:
    15.07.2025-07.08.2025
    16:00-19:00
    Тренер: Рогоза Максим

    Middle 24 часа

    49 500 ₽

    44 550 ₽ — для физ. лиц

    Программа курса

    01 Обзор DDD

    02 Необходимые предварительные знания
  • Доменные эксперты
  • Функциональные и нефункциональные требования, атрибуты качества
  • Шаблоны реализации доменной логики
  • Связь DDD & Agile
  • 03 Инструменты DDD
  • Общий язык
  • Роль историй в понимании домена
  • Event Storming
  • Domain Whirlpool
  • Разбиение на домены
  • Impact mapping
  • User story mapping
  • Quality Attribute Workshop
  • 04 Стратегическое проектирование
  • Типы поддоменов и разбиение 
  • Ограниченные контексты
  • Контекстные карты и шаблоны 
  • Топология команд
  • 05 Архитектурные аспекты DDD
  • Анемичный домен и причины
  • Работа с «устаревшими системами»
  • Интеграция контекстов
  • Типы сообщений и коммуникация между поддоменами
  • 06 Тактическое проектирование
  • Полезные шаблоны тактического дизайна 
  • Объекты значения и шаблоны на их основе
  • Сущности
  • Агрегаты 
  • Сервисы 
  • Фабрики 
  • Репозитории
  • 07 Всего: теория – 16 ч. (67%), практика – 8 ч. (33%)

    49 500 ₽

    44 550 ₽ — для физ. лиц

    Записаться на курс

    Чему вы научитесь

    01 Применять инструменты DDD для реализации сложных программных систем.
    02 Применять стратегические практики DDD для декомпозиции систем.
    03 Применять тактические паттерны DDD в рамках ограниченного контекста.
    04 Эффективно моделировать агрегаты.
    05 Использовать доменные события для интеграции ограниченных контекстов.

    49 500 ₽

    44 550 ₽ — для физ. лиц

    Записаться на курс

    Записаться на курс

    49 500 ₽

    44 550 ₽ — для физ. лиц

    Юр. лицо — 49 500 ₽
    Физ. лицо — 44 550 ₽
    15.07.2025, Онлайн
    15.07.2025, Онлайн
    Открытая дата

    Отзывы о курсе

    Повысьте квалификацию И получите диплом
    Отзывы учеников
    Отличный тренинг! Очень крутые вещи рассказаны максимально просто. На практических занятиях отработали сложные моменты. После тренинга просто хочется максимально DDD внедрить в проект.
    Тренинг понравился, структурировал мои теоретические знания по данной теме. Также приобрел практические знания. Особенно понравились дискусии по данной теме.
    Очень понравился тренер Максим Кичук, который рассказывал о наглядных примерах из своего опыта работы. Понравилось, что помимо теории есть практика, которая потом обсуждается с тренером. У курса хорошие структурирование материала и практические задания на применение Event Sourcing.
    Понравилась связь между практиками и лекциями, их объём и рекомендации от тренера. Было много интересных практических заданий, полезная обратная связь. Курс хороший, хотелось бы иметь возможность просмотра записей курса.
    Для меня была новой вся парадигма проектирования, ориентированная на предметную область, поэтому курс оказался очень полезным! Материал представлен в доступных для разных уровней слушателей изложении. Преподавать очень развернуто отвечает на вопросы, связанные с применением кода.
    Хороший тренинг на очень интересную тему. Понравились практические упражнения и то, что было много материалов по теории, которые можно использовать в работе. Классно, что есть возможность пообщаться с лектором и получить компетентные ответы на свои вопросы, но хотелось бы больше примеров.

    Связанные курсы

    ARC-014
    16 часов

    Архитектура в Agile-проектах

    Практический курс по способам интеграции архитектурных решений с Agile для повышения качества проектов. Узнайте, как подружить гибкость Agile с мощью архитектурного проектирования. Курс для тех, кто хочет строить масштабируемые и устойчивые системы в динамичной среде. Получите практические навыки адаптации архитектурных практик к Agile-проектам и избегайте дорогостоящих ошибок.

    от Middle

    36 900 ₽

    ARC-015
    24 часа

    Микросервисная архитектура

    Вы узнаете, как разрабатывать гибкие и эффективные системы, соответствующие требованиям бизнеса. В курсе рассматриваются основные проблемы, связанные с реализацией микросервисной архитектуры, а также стратегии, механизмы, паттерны и инструменты для их решения. Практические упражнения позволят вам приобрести навык самостоятельного проектирования МСА систем. Курс поможет вам принимать обоснованное решение о применимости МСА в зависимости от потребностей бизнеса и возможностей команды.

    от Middle

    51 500 ₽

    Наши ученики работают в:

    Наши клиенты

    Mail.ru
    Альфа-Банк, банковская группа
    Лаборатория Касперского
    Магнит, розничная сеть
    Спортмастер, сеть спортивных магазинов
    ПСБ
    Сбертех
    Дзен
    IT One
    Ростелеком
    Мегафон
    Nexign
    Ozon
    Декатлон
    X5 Group
    Технониколь
    Росатом
    Газпром
    Нлмк
    ВСК
    Синимекс

    Не нашли, что искали? — Просто напишите, и мы поможем

    Корпоративное обучение Оценка персонала Сертификация О нас Стань тренером Блог
    Пользователь только что записался на курс ""
    Спасибо!
    Форма отправлена успешно.