👨‍💻
Software Engineering
Implementing Domain Driven Design
Implementing Domain Driven Design
  • Intro
  • 1. Getting Started with DDD
    • The Business Value of DDD
  • 4: Architecture
  • 5: Entities
    • Why We Use Entities
    • Unique Identity
  • 6: Value Objects
    • Value Object Characteristics
    • Integrate with Minimalism
    • Standard Types Expressed as Values
    • Resources
  • 10: Aggregates
  • 8: Domain Events
    • The When & Why of Domain Events
    • Modeling Events
    • Publishing Events from the Domain Model
  • 13: Factories
  • Resources
Powered by GitBook
On this page
  • What is an Entity?
  • Be wary of CRUD-based systems
  1. 5: Entities

Why We Use Entities

What is an Entity?

  • It is the unique identity and mutability characteristics that differentiate Entities from Value Objects.

  • Design a domain concept as an Entity when we care about its individuality when distinguishing it from all other objects in a system.

  • An Entity is capable of being changed continuously over a long period of time.

  • Entities are often overused. Often a concept should be modeled as a Value.

Be wary of CRUD-based systems

  • Businesses regularly put too much effort into developing glorified database table editors.

  • If we apply CRUD to the wrong systems - complex systems that deserve DDD - we may regret it.

  • When complexity grows, we experience the limitation of poor tool selection.

Previous5: EntitiesNextUnique Identity

Last updated 1 year ago