Domain Driven Design Layers
Now let s zoom into the bullsfirst oms and discuss ddd as it relates to a single bounded context.
Domain driven design layers. I am in the process of learning the domain modeling. Domain layer this layer contains information about the business domain. It implements persistence for.
User interface application domain and infrastructure. In general to create a full fledged software application we will have to implement a lot more than just the domain model user interface database access and external service adapters are just a few examples. The first concept we ll talk about is called layered architecture.
Eric evans in the book ddd. I am a big fan of domain driven design ddd and eric evans seminal book on ddd domain driven design. Persistence of the business objects and possibly their state is delegated to the infrastructure layer.
An important factor is that objects of the same level do not have. Infrastructure layer this layer acts as a supporting library for all the other layers. Domain driven design ddd is the concept that the structure and language of software code class names class methods class variables should match the business domain for example if a software processes loan applications it might have classes such as loanapplication and customer and methods such as acceptoffer and withdraw.
Eric evans s excellent book domain driven design says the following about the domain model layer and the application layer. Domain driven design and business logic. Domain layer is a layer of business logic that should implement reality reflecting business processes.
I do think it s important to emphasise the domain in domain driven design. Eric evans book talks about how the business problem we are trying to solve called the domain model should be the heart of the software see eric evans book page 4. Developers need to understand the domain model before they start creating templates xml files and that can be quite tricky itself depending on the complexity of the business.