What You Will Learn

Our Approaches to Clean Architecture

We will explore Clean Architecture in two approaches.

Looking at an Existing Clean Architecture Reference Application


We will see how the guiding principles are applied in an existing reference application we maintain called eShopOnWeb.

eShopOnWeb is an eCommerce solution with the following components:

  • Web – a eCommerce site that sells .NET merchandise
  • PublicAPI – that enables people to query the product catalog
  • BlazorAdmin – admin portal to manage what appears in the eShop portal
  • Class libraries

Using Ardalis' Clean Architecture Template

In a separate section, we will walk through how to use Ardalis’ Clean Architecture template to create a pizza-themed application. While this walk-through may appear elsewhere, in this course, we explain the “why”s and the “how”s.

We are releasing the course in stages. We will update this list as we release sections.

Currently Released Sections

Course Introduction

  • Welcome - about the instructor and the course
  • Intended Audience
  • Prerequisites
  • What You Will Learn

What is Clean Architecture?

  • What is Clean Architecture?
  • Benefits of Clean Architecture
  • Drawbacks to Clean Architecture

Guiding Principles

  • Introduction to Guiding Principles
  • Separation of Concerns
  • Single Responsibility Principle
  • Dependency Inversion Principle
  • Explicit Dependencies Principle

About the Architecture

  • Introduction
  • Monolithic Architectures vs Clean Architecture
  • Layered (N-Tier) Design vs Clean Architecture
  • Hexagonal Architecture vs Clean Architecture
  • Domain-Centric Design
  • Microservices and Clean Architecture

Organizing Apps into Clean Architecture Solutions

  • Creating a Clean Architecture App Using Ardalis' Clean Architecture Template
  • Getting Started
  • The Core Project
  • The UseCases Project
  • The Infrastructure Project
  • The Web Project

Clean Architecture vs Vertical Slices

  • Clean Architecture and Vertical Slices
  • Code-Along: Clean Architecture to Vertical Slices

Upcoming Sections

Organizing Apps into Clean Architecture Solutions

  • Understanding the NimblePizza Domain
  • Making Your Own Changes with Ardalis' Clean Architecture Template

Summary

  • Tradeoffs
  • Other Options




Complete and Continue