Author: Matthew Renze
Published: January 11, 2017

Learn how to create modern software architecture that is simple, understandable, testable, and maintainable.

As software grows more complex, we need to manage this complexity by using various architectural patterns, practices, and principles. In this course, we will learn how modern software experts keep their architecture clean using a new approach to software architecture.

We’ll learn about domain-centric architectures, application layers, (CQRS) Command-Query Responsibility Separation, functional cohesion, bounded contexts, microservices, and more. Most important though, we’ll see how these practices, when combined, create a clean and maintainable architecture.

When you are finished with this course, you’ll have the skills necessary to implement clean architecture practices on your own software projects.

1. Course Overview
2. Introduction
3. Domain-centric Architecture
4. Application Layer
5. Commands and Queries
6. Functional Organization
7. Microservices
8. Testable Architecture
9. Evolving the Architecture

Software developers

Basic programming skills

2 hours and 21 minutes


Start Course