MyPage is a personalized page based on your interests.The page is customized to help you to find content that matters you the most.

I'm not curious

Domain-Driven Design Fundamentals

Course Summary

Domain-Driven Design (DDD) is a proven approach to writing software that deals with complex business requirements. This course teaches the fundamentals of Domain-Driven Design through a demonstration of customer interactions and a complex demo application

  • +

    Course Syllabus

    ● Introducing DDD
        ◦ Introduction
        ◦ 10 Years of Domain-Driven Design
        ◦ What's in This Course?
        ◦ Eric Evans' Participation in This Course
        ◦ Why Should You Care About Domain-Driven Design?
        ◦ Eric Evans on the Importance of Communication
        ◦ Benefits of DDD
        ◦ Drawbacks of DDD
        ◦ A Mind Map of DDD's Working Parts
        ◦ Overview of the App Used in This Course
        ◦ Key Takeaways
        ◦ Resources
    ● DDD: Modeling Problems in Software
        ◦ Introduction
        ◦ Goals?
        ◦ Learning About Our Domain by Talking With a Domain Expert
        ◦ Breaking the Domain Into Sub-domains
        ◦ Focusing on One Sub-domain With the Domain Expert
        ◦ First High-level Model of the Sub-domain
        ◦ Creating a Bounded Context
        ◦ Difference Between Sub-domain and Bounded Context
        ◦ Understanding Context Maps
        ◦ Eric Evans on Clearly Defining Context Boundaries
        ◦ Bounded Contexts in Our Application
        ◦ The Ubiquitous Language of a Bounded Context
        ◦ Working on a Ubiquitous Language With the Domain Expert
        ◦ Glossary of Terms From This Module
        ◦ A Quick Review
        ◦ Resources
    ● Elements of a Domain Model
        ◦ Introduction
        ◦ Goals
        ◦ The Importance of Understanding DDD Terminology
        ◦ Focus on the Domain
        ◦ Anemic and Rich Models
        ◦ Entities in DDD and in Our Bounded Context
        ◦ Eric Evans on the Single Responsibility of Entities
        ◦ Eric Evans on the Entity Equality Methods
        ◦ How We've Implemented Entities in Our Code
        ◦ Associations (aka Relationships)
        ◦ Value Objects
        ◦ Eric Evans on the Methods in Value Objects
        ◦ Value Objects in Our Code
        ◦ Eric Evans on the Entity Logic in Value Objects
        ◦ Domain Services
        ◦ Glossary
        ◦ Key Takeaways
        ◦ Resources
    ● Aggregates in Domain-Driven Design
        ◦ Introduction
        ◦ Goals
        ◦ Tackling Data Complexity
        ◦ Introducing Aggregates and Aggregate Roots
        ◦ Interacting With Aggregates
        ◦ Evolving the Appointments Aggregate
        ◦ Using Invariants to Better Understand Our Aggregate
        ◦ Modeling Breakthroughs and Refactoring
        ◦ Considering Schedule as Our New Aggregate
        ◦ The Schedule Aggregate in Our Application
        ◦ Review Aggregate Tips
        ◦ Glossary
        ◦ Resources
    ● Repositories
        ◦ Introduction
        ◦ Goals
        ◦ Introducing Repositories
        ◦ Repository Tips, Benefits, and Guidance
        ◦ Comparing Repositories and Factories
        ◦ To IRepository T or Not to IRepository T?
        ◦ Generic Repositories in DDD
        ◦ Repositories in Our Application
        ◦ Refactoring for Better Separation
        ◦ Glossary
        ◦ References
    ● Domain Events and Anti-corruption Layers
        ◦ Introduction
        ◦ Goals
        ◦ Introducing Domain Events
        ◦ Domain Events Demo in a Simple App
        ◦ Domain Events in Our Application
        ◦ Domain Event Boundaries
        ◦ Anti-corruption Layers
        ◦ Glossary
        ◦ References
    ● Reaping the Benefits of Domain-Driven Design
        ◦ Introduction
        ◦ Goals
        ◦ Our Current System Design
        ◦ Discussing a New Feature With the Domain Expert
        ◦ Planning the Implementation
        ◦ Adding a Message Queue Between Our Apps
        ◦ Combining Message Queues, Events, and Services
        ◦ Debugging to See Detailed Implementation in Code
        ◦ Considering the UI When Designing the Domain
        ◦ Eric Evans on the Fallacy of Perfectionism
        ◦ Remember This From This Module!
        ◦ Glossary
        ◦ References

Course Fee:
USD 29

Course Type:


Course Status:



1 - 4 hours / week

This course is listed under Development & Implementations Community

Related Posts:

Attended this course?

Back to Top

Awards & Accolades for MyTechLogy
Winner of
Top 100 Asia
Finalist at SiTF Awards 2014 under the category Best Social & Community Product
Finalist at HR Vendor of the Year 2015 Awards under the category Best Learning Management System
Finalist at HR Vendor of the Year 2015 Awards under the category Best Talent Management Software
Hidden Image Url

Back to Top