Tagged articles

Aggregate root

7 articles · Page 1 of 1
samdeepthink
samdeepthink
Jul 24, 2026 · Backend Development

When Should Domain Objects Contain Methods in a Rich DDD Model?

The article defines a clear rule for placing methods in DDD aggregates: a method belongs inside the domain object only when it can operate solely on data owned by that object, illustrated with order status and marketing activity examples.

Aggregate rootDDDDomain Objects
0 likes · 4 min read
When Should Domain Objects Contain Methods in a Rich DDD Model?
samdeepthink
samdeepthink
Jul 18, 2026 · Fundamentals

Why DDD Insists on a Single Repository per Aggregate

The article explains that in Domain‑Driven Design a Repository should target the aggregate, not individual tables, because the aggregate defines a consistency boundary; having separate repositories for master and detail tables breaks this boundary, allowing inconsistent writes and bypassing the aggregate root’s validation.

Aggregate rootConsistency boundaryDDD
0 likes · 9 min read
Why DDD Insists on a Single Repository per Aggregate
Tinker Programmer
Tinker Programmer
Jul 3, 2026 · Backend Development

How Aggregate Roots Guard Business Invariants – The Final Defense Line

The article examines a payroll bug caused by exposing internal collections, then explains three immutable‑focused rules for aggregate roots—expose only through the root, keep each transaction to a single aggregate, and reference other aggregates by ID only—showing how proper design prevents consistency errors, performance loss, and concurrency conflicts in Spring Boot applications.

Aggregate rootDomain EventsDomain-Driven Design
0 likes · 17 min read
How Aggregate Roots Guard Business Invariants – The Final Defense Line
Tencent Cloud Developer
Tencent Cloud Developer
May 8, 2024 · Backend Development

Understanding Domain-Driven Design: Concepts, Principles, and Microservices Integration

The article explains Domain‑Driven Design’s philosophy of aligning business language with code, defines key concepts such as bounded contexts, entities, value objects, aggregates, and shows how these ideas translate into microservice decomposition, event‑driven integration, and reduced coupling for cloud‑native systems.

Aggregate rootBounded ContextDDD
0 likes · 16 min read
Understanding Domain-Driven Design: Concepts, Principles, and Microservices Integration
JD Tech
JD Tech
Aug 10, 2023 · Backend Development

Understanding Aggregate Roots and Domain Events in Domain-Driven Design with a Java Demo

This article explains the core DDD concepts of aggregate roots and domain events, illustrates them through a simplified e‑commerce scenario, and provides complete Java code examples for entities, value objects, events, and aggregate services to help developers apply DDD in backend systems.

Aggregate rootDomain EventDomain-Driven Design
0 likes · 11 min read
Understanding Aggregate Roots and Domain Events in Domain-Driven Design with a Java Demo
ITPUB
ITPUB
Jul 8, 2022 · Fundamentals

Why Entities Matter in DDD: Understanding Identity, Uniqueness, and Aggregate Roots

This article explains the core DDD concepts of entities, value objects, and aggregate roots in Go, detailing how unique identifiers differ from database primary keys, when to use value objects versus primitive types, and best practices for generating and handling IDs within aggregates.

Aggregate rootDDDGo
0 likes · 17 min read
Why Entities Matter in DDD: Understanding Identity, Uniqueness, and Aggregate Roots
Architecture Digest
Architecture Digest
Dec 24, 2021 · Backend Development

Understanding Aggregates and Aggregate Roots in Domain-Driven Design

This article explains the concepts of aggregates and aggregate roots in DDD, describes how to design aggregates through event storming with a concrete insurance underwriting example, and outlines key design principles and the relationships among aggregates, entities, and value objects.

Aggregate rootAggregatesDomain-Driven Design
0 likes · 12 min read
Understanding Aggregates and Aggregate Roots in Domain-Driven Design