Pluralsight - Domain-Driven Design Fundamentals - 2014seeders: 0
leechers: 0
Pluralsight - Domain-Driven Design Fundamentals - 2014 (Size: 776.55 MB)
Description
This course teaches the fundamentals of Domain-Driven Design (DDD) through a demonstration of customer interactions and a complex demo application, along with advice from Eric Evans.
Introducing DDD 00:24:18 Introduction 00:23 10 Years of Domain-Driven Design 01:00 What's in This Course? 01:27 Eric Evans' Participation in This Course 00:29 Why Should You Care About Domain-Driven Design? 02:13 High Level View of DDD 1: Interaction With Domain Experts 01:12 Eric Evans on the Importance of Communication 00:24 High Level View of DDD 2: Focus on a SubDomain 01:15 High Level View of DDD 3: Implementing the SubDomain 00:50 Benefits of DDD 01:47 Drawbacks of DDD 02:08 A Mind Map of DDD's Working Parts 02:32 Overview of the App Used in This Course 06:26 Key Takeaways 01:21 Resources 00:43 DDD: Modeling Problems in Software 00:45:06 Introduction 00:27 Goals? 00:51 Learning About Our Domain by Talking With a Domain Expert 05:14 Breaking the Domain Into Sub-domains 00:50 Focusing on One Sub-domain With the Domain Expert 05:23 First High-level Model of the Sub-domain 01:06 Creating a Bounded Context 04:45 Difference Between Sub-domain and Bounded Context 02:30 Understanding Context Maps 04:59 Eric Evans on Clearly Defining Context Boundaries 01:30 Bounded Contexts in Our Application 01:26 The Ubiquitous Language of a Bounded Context 03:46 Working on a Ubiquitous Language With the Domain Expert 05:23 Glossary of Terms From This Module 05:21 A Quick Review 00:56 Resources 00:31 Elements of a Domain Model 01:01:05 Introduction 00:23 Goals 01:12 The Importance of Understanding DDD Terminology 02:08 Focus on the Domain 02:53 Anemic and Rich Models 02:10 Entities in DDD and in Our Bounded Context 09:13 Eric Evans on the Single Responsibility of Entities 05:51 Eric Evans on the Entity Equality Methods 01:55 How We've Implemented Entities in Our Code 07:38 Associations (aka Relationships) 04:16 Value Objects 06:54 Eric Evans on the Methods in Value Objects 02:54 Value Objects in Our Code 04:17 Eric Evans on the Entity Logic in Value Objects 01:15 Domain Services 03:15 Glossary 02:40 Key Takeaways 00:52 Resources 01:10 Aggregates in Domain-Driven Design 00:24:44 Introduction 00:19 Goals 00:45 Tackling Data Complexity 01:40 Introducing Aggregates and Aggregate Roots 03:10 Interacting With Aggregates 02:16 Evolving the Appointments Aggregate 01:52 Using Invariants to Better Understand Our Aggregate 02:25 Modeling Breakthroughs and Refactoring 00:59 Considering Schedule as Our New Aggregate 01:41 The Schedule Aggregate in Our Application 06:13 Review Aggregate Tips 01:23 Glossary 01:17 Resources 00:37 Repositories 00:27:51 Introduction 00:14 Goals 00:26 Introducing Repositories 03:44 Repository Tips, Benefits, and Guidance 06:45 Comparing Repositories and Factories 01:03 To IRepository T or Not to IRepository T? 01:03 Generic Repositories in DDD 01:43 Repositories in Our Application 05:10 Refactoring for Better Separation 05:33 Glossary 01:43 References 00:21 Domain Events and Anti-corruption Layers 00:35:53 Introduction 00:18 Goals 00:24 Introducing Domain Events 06:22 Domain Events Demo in a Simple App 10:44 Domain Events in Our Application 09:38 Domain Event Boundaries 02:17 Anti-corruption Layers 03:44 Glossary 01:47 References 00:33 Reaping the Benefits of Domain-Driven Design 00:37:30 Introduction 00:18 Goals 00:33 Our Current System Design 01:15 Discussing a New Feature With the Domain Expert 01:56 Planning the Implementation 01:22 Adding a Message Queue Between Our Apps 05:45 Combining Message Queues, Events, and Services 05:37 Debugging to See Detailed Implementation in Code 10:53 Considering the UI When Designing the Domain 00:50 Homework: Extending the App Again 02:54 Eric Evans on the Fallacy of Perfectionism 02:34 Remember This From This Module! 00:40 Glossary 01:08 References 01:39 Sharing Widget |