Перейти к основному содержимому

3 записи с тегом "DDD"

Посмотреть все теги

· 13 мин. чтения

1. Обзор

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

В то же время с помощью системы модулей Java 9 мы можем создавать сильно инкапсулированные модули.

В этом руководстве мы создадим простое приложение магазина и увидим, как использовать модули Java 9, определяя явные границы для ограниченных контекстов.

2. Контексты, ограниченные DDD

· 8 мин. чтения

1. Обзор

В этом руководстве мы объясним, как использовать аннотацию @DomainEvents и класс AbstractAggregateRoot для удобной публикации и обработки доменных событий, создаваемых агрегатом — одним из ключевых тактических шаблонов проектирования в доменно-ориентированном проектировании.

Агрегаты принимают бизнес-команды, что обычно приводит к созданию события, связанного с бизнес-сферой, — события домена .

Если вы хотите узнать больше о DDD и агрегатах, лучше всего начать с оригинальной книги Эрика Эванса . Есть также отличная серия об эффективном дизайне заполнителей, написанная Воном Верноном. Определенно стоит прочитать.

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

2. Зависимости Maven

· 5 мин. чтения

1. Обзор

В этой статье мы рассмотрим, как Axon поддерживает сводные моментальные снимки.

Мы считаем эту статью расширением нашего основного руководства по Axon . Таким образом, мы снова будем использовать и Axon Framework , и Axon Server . В реализации этой статьи мы будем использовать первое, а второе — хранилище событий и маршрутизатор сообщений.

2. Агрегированные снэпшоты

Давайте начнем с понимания того, что означает моментальный снимок агрегата. Когда мы начинаем с Event Sourcing в приложении, возникает естественный вопрос: как мне сохранить совокупную производительность в моем приложении? Хотя существует несколько вариантов оптимизации, самый простой из них — внедрить моментальные снимки.