Domain-Driven Design

blur

Learn Path Description

Learn the philosophy and major design patterns that underlie the Domain Driven Design approach to software architecture. Understand the importance of focusing on the core domain and domain logic of your business. Explore techniques for refining the conceptual model by between the technical and domain experts. Learn from practical examples implemented in C# and .NET.

Skills You Will Gain

Courses In This Learning Path

blur
icon

Total Duration

2.2 hours

icon

Level

Beginner

icon

Learn Type

Certifications

Clean Architecture: Patterns, Practices, and Principles

Pluralsight, welcome! Matthew Renze is my name and I'd like to briefly introduce you to my course Clean Architecture. Patterns, Practices and Principles.
This course teaches you how software professionals keep their architecture clean by using Clean Architecture, a modern approach in software architecture. It covers:

blur
icon

Total Duration

4.25 hours

icon

Level

Intermediate

icon

Learn Type

Certifications

Modern Software Architecture: Domain Models, CQRS, and Event Sourcing

This course will cover DDD analysis patterns that are useful in determining the top-level architecture for a business domain. Details of implementation patterns will be provided for developers and architects.

blur
icon

Total Duration

4.15 hours

icon

Level

Intermediate

icon

Learn Type

Certifications

Domain-Driven Design Fundamentals

Welcome to Domain-Driven Design Fundamentals. This course is part of the ASP.NET MVC5 Learning Path at Pluralsight. Steve Smith and Julie Lerman are eager to help you understand the basics of Domain-Driven Design (DDD). This will be demonstrated through customer interactions and a demo application.

blur
icon

Total Duration

4.18 hours

icon

Level

Intermediate

icon

Learn Type

Certifications

Domain-Driven Design in Practice

Domain-Driven Design provides valuable insights into developing enterprise-level software projects but it's often difficult to know how to put them into practice. This course will cover the entire process of building an app using the DDD principles.

blur
icon

Total Duration

3.35 hours

icon

Level

Intermediate

icon

Learn Type

Certifications

Refactoring from Anemic Domain Model Towards a Rich One

If you want to build bulletproof business line applications, a rich and well-encapsulated domain model will be essential. This course, Refactoring From Anemic Domain Model to a Rich One, will show you how to implement it. You'll first learn about Anemic Domain and how it relates to functional programming. Next, you will learn about encapsulation. You'll also learn important refactoring techniques. This course will teach you how to recognize and fix this problem in your codebase.

blur
icon

Total Duration

3.51 hours

icon

Level

Intermediate

icon

Learn Type

Certifications

Domain-Driven Design: Working with Legacy Projects

You would love to work exclusively on green-field projects as a programmer. You are probably working on a legacy project at the moment, or in the near future. This course, Domain-Driven Development: Working with Legacy Projects will teach you skills to manage legacy projects and deliver new functionality while keeping stakeholders happy. You'll first learn how to refactor the legacy code one at a time. Then, you will learn how to handle rewrites and when and why it is better to retain the legacy code base. To deal with these code bases, you will learn techniques like the Strangler, Anticorruption Layer and Branch by Abstraction patterns. This course will give you a solid understanding about the theory and practice behind improving the functionality and scalability legacy projects.

blur
icon

Total Duration

87 minutes

icon

Level

Intermediate

icon

Learn Type

Certifications

Specification Pattern in C#

Domain-driven design uses many well-established patterns and practices. The specification pattern is just one example. This course, Specification pattern in C#, will teach you how to implement the specification patterns in practice. This course will teach you about the different uses of this pattern. Next, you will learn about common anti-patterns as well as pitfalls. The course will end with information about maintaining encapsulation and how to combine different specifications together. This course will equip you with the knowledge to use this pattern in real-world projects.

blur
icon

Total Duration

218 minutes

icon

Level

Intermediate

icon

Learn Type

Certifications

DDD and EF Core: Preserving Encapsulation

Entity Framework has made significant progress over the last few years. It introduced many features that allow you to build rich, highly-encapsulated domain models. This course DDD and EF Core - Preserving Encapsulation will provide you with a foundational understanding of the pitfalls and limitations of Domain-driven Design when it comes to using EF Core. You will first learn how to protect the encapsulation in these applications. Next, you'll learn about mapping techniques that can be used to create complex domain models. You will also learn the tricks and tips that can help you avoid common ORM problems. This course will equip you with the knowledge and skills required to implement Domain-driven Design principles while still preserving domain model encapsulation.

blur
icon

Total Duration

261 minutes

icon

Level

Intermediate

icon

Learn Type

Certifications

CQRS in Practice by Pluralsight

CQRS is a complex pattern that can be misunderstood, particularly when it comes to its application in real-world software projects. CQRS in practice is a course that will teach you everything about CQRS, including event sourcing and database configuration for reads or writes. You will first learn about CQRS, its principles, and the potential benefits it could bring to your project. Then, we will discuss common myths and anti-patterns surrounding CQRS. The final step will be to implement the pattern in practice. You will be working on a sample project that is very similar to the one you will encounter in the real world. Each step of the journey to CQRS will be explained in detail. You will be able to understand the CQRS pattern, and implement it in your own software projects by the end of the course.

blur