-
Урок 1.
00:01:21
Getting Started
-
Урок 2.
00:02:18
Course Outline and Prerequisites
-
Урок 3.
00:03:41
Area of Application for Domain-Driven Design
-
Урок 4.
00:02:30
Why Domain-Driven Design?
-
Урок 5.
00:03:32
Main Concepts of Domain-Driven Design
-
Урок 6.
00:02:56
Domain-Driven Design Is Not Only About Writing Code
-
Урок 7.
00:04:29
Onion Architecture and Domain Isolation
-
Урок 8.
00:01:08
Modeling Best Practices
-
Урок 9.
00:02:46
Domain-Driven Design and Unit Testing
-
Урок 10.
00:03:24
The Problem Domain Introduction
-
Урок 11.
00:01:32
Summary
-
Урок 12.
00:00:31
Introduction
-
Урок 13.
00:01:27
Vocabulary Used
-
Урок 14.
00:00:55
Problem Description
-
Урок 15.
00:04:00
Starting with Snack Machine
-
Урок 16.
00:01:21
Recap: Starting with Snack Machine
-
Урок 17.
00:03:16
Entities vs. Value Objects
-
Урок 18.
00:02:51
How to Recognize a Value Object in Your Domain Model?
-
Урок 19.
00:01:45
Entity Base Class
-
Урок 20.
00:03:29
Demo: Entity Base Class
-
Урок 21.
00:00:33
Recap: Entity Base Class
-
Урок 22.
00:01:48
Value Object Base Class
-
Урок 23.
00:00:58
Recap: Value Object Base Class
-
Урок 24.
00:01:15
Value Objects vs. .NET Value Types
-
Урок 25.
00:01:48
When to Write Unit Tests
-
Урок 26.
00:05:31
Implementing the Money Class
-
Урок 27.
00:04:35
Building up the Money Class
-
Урок 28.
00:05:23
Implementing the Snack Machine Class
-
Урок 29.
00:01:57
Recap: Implementing Money and Snack Machine
-
Урок 30.
00:03:06
Summary
-
Урок 31.
00:00:30
Introduction
-
Урок 32.
00:02:19
Application Services and UI in the Onion Architecture
-
Урок 33.
00:09:30
Adding UI for the Snack Machine
-
Урок 34.
00:01:46
Recap: Adding UI for the Snack Machine
-
Урок 35.
00:03:05
Designing the Database for the Snack Machine
-
Урок 36.
00:02:46
Introducing an ORM
-
Урок 37.
00:03:22
ID Generation Strategies
-
Урок 38.
00:01:44
Mapping Strategies
-
Урок 39.
00:03:50
Adjusting the Domain Layer for the Use with ORM
-
Урок 40.
00:03:06
Putting It All Together
-
Урок 41.
00:01:29
Summary
-
Урок 42.
00:00:25
Introduction
-
Урок 43.
00:01:14
Problem Description
-
Урок 44.
00:04:44
Starting with the Implementation
-
Урок 45.
00:03:53
Aggregates
-
Урок 46.
00:04:42
How to Find Boundaries for Aggregates
-
Урок 47.
00:01:43
Aggregate Root Base Class
-
Урок 48.
00:07:18
Refactoring the Snack Machine Aggregate
-
Урок 49.
00:01:25
Recap: Refactoring the Snack Machine Aggregate
-
Урок 50.
00:01:54
Implementing Missing Requirements
-
Урок 51.
00:06:05
Revealing a Hidden Requirement
-
Урок 52.
00:00:49
Recap: Revealing a Hidden Requirement
-
Урок 53.
00:01:50
Summary
-
Урок 54.
00:00:19
Introduction
-
Урок 55.
00:00:45
Adjusting the Database for the New Entities
-
Урок 56.
00:02:48
Repositories
-
Урок 57.
00:02:47
Repository Base Class
-
Урок 58.
00:03:03
Setting up Mappings for the Aggregates
-
Урок 59.
00:03:06
Refactoring the Snack Entity
-
Урок 60.
00:06:48
Adjusting the User Interface
-
Урок 61.
00:01:21
Summary
-
Урок 62.
00:00:37
Introduction
-
Урок 63.
00:01:00
New Task: an ATM Model
-
Урок 64.
00:02:26
Bounded Contexts
-
Урок 65.
00:02:03
Bounded Contexts and Sub-domains
-
Урок 66.
00:03:44
Choosing Boundaries for Bounded Contexts
-
Урок 67.
00:01:38
Drawing a Context Map
-
Урок 68.
00:03:46
Types of Physical Isolation
-
Урок 69.
00:02:03
Communication Between Bounded Contexts
-
Урок 70.
00:04:12
Code Reuse Between Bounded Contexts
-
Урок 71.
00:05:27
Implementing ATM Domain Logic
-
Урок 72.
00:01:11
Adjusting the database
-
Урок 73.
00:04:06
Adding UI
-
Урок 74.
00:01:48
Summary
-
Урок 75.
00:00:22
Introduction
-
Урок 76.
00:00:57
New Requirements
-
Урок 77.
00:02:43
Introducing a New Bounded Context
-
Урок 78.
00:02:51
Implementation: the First Attempt
-
Урок 79.
00:02:03
Domain Events
-
Урок 80.
00:03:25
Introducing a Domain Event
-
Урок 81.
00:01:04
Physical Delivery
-
Урок 82.
00:03:10
Building up Management Bounded Context
-
Урок 83.
00:05:15
Handling Domain Events with the Classic Approach
-
Урок 84.
00:02:33
Recap: Classic Approach
-
Урок 85.
00:06:44
A Better Approach to Handling Domain Events
-
Урок 86.
00:01:12
Recap: a Better Approach
-
Урок 87.
00:01:02
Using Domain Events to Communicate Between Microservices
-
Урок 88.
00:03:26
Adding Interface for the Management Bounded Context
-
Урок 89.
00:02:59
Summary
-
Урок 90.
00:00:27
Introduction
-
Урок 91.
00:03:42
Always Valid vs. Not Always Valid
-
Урок 92.
00:01:36
Factories
-
Урок 93.
00:01:50
Domain Services vs. Application Services
-
Урок 94.
00:01:31
Anemic Domain Model Anti-pattern
-
Урок 95.
00:01:20
Fat Entities Anti-pattern
-
Урок 96.
00:02:46
Repository Anti-patterns
-
Урок 97.
00:01:17
Mechanical Approach to DDD
-
Урок 98.
00:01:44
Further Enhancements
-
Урок 99.
00:01:46
Module Summary
-
Урок 100.
00:01:25
Resource List
-
Урок 101.
00:00:49
Course Summary