Download - Approaching to domain driven development
![Page 1: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/1.jpg)
Approaching to Domain-Driven Development
An introduction to DDD and Frameworks
![Page 2: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/2.jpg)
AgendaOverviewDDD Basis (UL, Entity, AR, VO, Services,
Repositories, Factories)DDD Advanced (Techniques, Anticorruption)Domain Model ExamplesDDD Architecture Styles (Layered, CQRS)Frameworks (NCQRS, Apworks)Apworks DemonstrationReferences
![Page 3: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/3.jpg)
OverviewDDD is an approach to develop software for
complex needsPlacing the primary focus on the core domain
& its logicBasing complex designs on a modelInitiating a creative collaboration between
technical and domain experts on the heart of the problem
Not a technology or a methodologyMore than Model-Driven Architecture
![Page 4: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/4.jpg)
DDD BasisUbiquitous Language
More like a Domain Specific Language (DSL)Unified Modeling Language (UML)
Bounded ContextContext MapBuilding Blocks of DDD
EntityValue ObjectAggregate and its rootsDomain ServiceRepositorySpecificationFactory
![Page 5: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/5.jpg)
DDD AdvancedTechnical concepts supporting DDD
Plain Old CLR Objects (POCO)Inversion of Control/Dependency Injection
(IoC/DI)Aspect-Oriented Programming (AOP)Domain Specific LanguagesEvent Driven Architecture (CQRS Architectural
Pattern)Anticorruption Layer
![Page 6: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/6.jpg)
Domain Model Examples (Flight)
![Page 7: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/7.jpg)
Domain Model Examples (Sales)
![Page 8: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/8.jpg)
DDD Architectural StylesLayered Architecture
![Page 9: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/9.jpg)
DDD Architectural StylesCommand-Query Responsibility Segregation
(CQRS)
![Page 10: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/10.jpg)
FrameworksNCQRS (.NET)Axon Framework (Java)Jdon Framework (Java)Apworks (.NET)
Supports both Layered and CQRS architecture application development
Visual Studio 2010/2012 Project Templates supported
Flexible configured, any 3rd party components from different vendors are supported to use for any purpose
![Page 11: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/11.jpg)
Apworks DemonstrationCreating Layered Applications with VS
Project TemplatesCQRS demonstration
![Page 12: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/12.jpg)
ReferencesDomain-Driven Design:
http://www.domaindrivendesign.orgMicrosoft NlayerApp:
http://microsoftnlayerapp.codeplex.comCQRS:
http://martinfowler.com/bliki/CQRS.htmlNCQRS Framework: http://ncqrs.orgAxon Framework:
http://www.axonframework.orgJdon Framework: http://jdon.comApworks Framework:
http://apworks.codeplex.com
![Page 13: Approaching to domain driven development](https://reader036.vdocuments.net/reader036/viewer/2022062319/554f3527b4c905471e8b456b/html5/thumbnails/13.jpg)
Thank You