What is Domain Driven Design? - Stack Overflow DDD (domain driven design) is a useful concept for analyse of requirements of a project and handling the complexity of these requirements Before that people were analysing these requirements with considering the relationships between classes and tables and in fact their design were based on database tables relationships it is not old but it has
What is Domain Driven Design (DDD)? - Stack Overflow Before attempting DDD, you should be familiar with design patterns and enterprise design patterns Knowing these makes DDD a lot easier to grasp And, as mentioned above, there is a free introduction to DDD available from InfoQ (where you can also find talks about DDD)
DDD - Dependencies between domain model, services and repositories To your last point, services in DDD are a place to put what I describe as "awkward" logic If you have some type of logic or work flow that has dependencies on other entities this is the type of logic that usually doesn't "fit" inside a domain object itself Example: If I have a method on my business object to perform some type of validation, the service class might execute this method (still
When do you use entities, value objects and aggregates (DDD)? Entity versus Value object In DDD, you model your business cases using domain objects These objects can fall into 2 categories: entities and value objects Entites have a natural key to identify them, wheras value objects are solely identified by their value For instance, in my country, the department of justice considers that the identity of a person is a composition between the following