Pragmatic Clean Architecture [Milan Jovanović]
40 👀
Harry Potter

Harry Potter

May 28, 2024

Pragmatic Clean Architecture [Milan Jovanović]

Master The Clean Architecture

This comprehensive course will teach you the system I use to ship production-ready applications using Clean Architecture. Learn how to apply the best practices of modern software architecture. Join 2,750+ other students to accelerate your growth as a software architect.

Everything You Need To Build Production-Ready Applications With Clean Architecture

Clean Architecture Deep-Dive

  • Learn the architectural principles to make better decisions
  • How to design applications that stand the test of time
  • Where should you use Clean Architecture

Build a Rich Domain Layer with DDD

  • A practical guide to using Domain-Driven Design
  • Learn the most important DDD tactical patterns
  • Best practices for designing a rich domain model

Clean Application Layer use cases

  • Learn how to implement clean use cases with CQRS
  • Solve cros-cutting concerns with ease
  • How to achieve blazing query speed

Powerful Infrastructure Layer

  • How to implement a blazing fast persistence layer
  • Get the most from advanced EF Core features
  • Learn how to solve concurrency issues

Elegant Presentation Layer

  • How to set up dependency injection the right way
  • Configuration management and documentation
  • Adding API and endpoints efficiently

Bulletproof Authentication

  • Implement robust JWT authentication to secure your API
  • Learn how to integrate an external identity provider
  • How to apply modern security best practices

Robust Authorization

  • Learn how to implement custom authorization policies
  • Role-based and permission-based authorization
  • Why you need resource-based authorization

Production-Ready Advanced Features

  • Structured logging, health checks, API versioning
  • Improve scalability with background jobs
  • Distributed caching with Redis

High-Quality Testing

  • Learn how to test complex systems the right way
  • Unit testing, Integration testing, Functional (E2E) testing
  • Enforce your software architecture with architecture tests

After Completing This Course You Will

  • Confidently use Clean Architecture to build amazing projects at your work
  • Build a rich domain model with Domain-Driven Design fundamentals
  • Set up production-ready applications with industry best practices
  • Understand the most important architectural principles

The Full Curriculum

Chapter 1: Course Introduction

  • Welcome
  • What you will learn in this course
  • What are the prerequisites for taking this course

Chapter 2: Clean Architecture Fundamentals

  • Architectural principles & Design principles
  • Clean Architecture layers
  • What we are building & why
  • Chapter recap

Chapter 3: Domain Layer

  • Introduction
  • Creating the Domain project
  • Defining our first domain entity
  • What is an Entity in Domain-Driven Design?
  • Introducing Value Objects for solving primitive obsession
  • The importance of private setters in the domain model and encapsulation
  • Using the Static Factory pattern in the domain
  • Introducing the Domain Events pattern to the solution
  • Adding Repositories and the Unit of Work to the domain
  • Creating the Booking entity
  • Implementing a Domain service
  • Using Double Dispatch for a better domain model
  • Introducing the Result class to the project
  • Defining a dictionary of domain errors
  • Chapter recap

Chapter 4: Application Layer

  • Introduction
  • Creating the Application project
  • Configuring dependency injection and installing MediatR
  • Adding the required abstractions for CQRS
  • Implementing Commands with the rich domain model & repositories
  • Defining a domain event handler
  • Implementing Queries with Dapper for blazing performance
  • Solving logging as a cross-cutting concern
  • Creating a Validation pipeline for commands
  • Chapter recap

Chapter 5: Infrastructure Layer

  • Introduction
  • Creating the Infrastructure project
  • Configuring infrastructure services with dependency injection
  • Adding Entity Framework Core to the solution
  • Configuring Entity Framework Core with dependency injection
  • Creating the Domain entity configurations
  • Automatically applying entity configurations
  • Implementing repository interfaces using a generic repository
  • Implementing the SQL connection factory
  • Publishing domain events inside the Unit of Work
  • Solving race conditions with optimistic concurrency
  • Chapter recap

Chapter 6: Presentation Layer

  • Introduction
  • Creating the Presentation project
  • Configuring services with dependency injection
  • Adding Controllers and endpoints
  • Setting up Docker Compose and running the API
  • Creating EF migrations and applying them
  • Seeding initial data
  • Adding Middleware - Global exception handler
  • Demo: Presentation layer & API
  • Chapter recap

Chapter 7: Authentication

  • Introduction
  • Keycloak identity provider setup
  • Keycloak admin panel overview
  • Demo: Obtaining JWTs using Keycloak
  • Configuring authentication middleware & services
  • Configuring JWT authentication options
  • Demo: Authentication in action
  • Implementing the user registration feature
  • Adding an API endpoint for registering a user
  • Implementing the authentication service
  • Configuring the authentication service as a typed HTTP client
  • Demo: User registration with Keycloak
  • Implementing the user login feature
  • Demo: User login with Keycloak
  • Chapter recap

Chapter 8: Authorization NEW

  • Introduction
  • Implementing Role-based Authorization
  • Implementing Permission-based Authorization
  • Implementing Resource-based Authorization
  • Chapter recap

Chapter 9: Advanced Topics NEW

  • Introduction
  • Structured Logging with Serilog and Seq
  • Distributed Caching with Redis
  • Health Checks in Clean Architecture
  • Implementing API Versioning
  • Transactional Outbox Pattern
  • Minimal APIs
  • Chapter recap

Chapter 10: Testing NEW

  • Introduction
  • Domain Layer Unit Testing
  • Application Layer Unit Testing
  • Integration Testing
  • Functional Testing
  • Architecture Testing
  • Chapter recap

Free Download 😀

Zip/rar files password can be one of these :- FreeCourseUniverse / CheapUniverse
Harry Potter

Harry Potter

Hey Guys We are Tech Enthusiasts and we know knowledge is key to success ! We are here to open path to your success by providing what you want. Today education == business. Our moto is education should be accessible by any person who is not able to purchase overpriced content.

Leave a comment

0 Comment


Membership Plans

( New Forum )

We are bringing so many new things at the fraction of a cost....


    How to download ??


    This site is hosted on Digital Ocean

    Get $200 credit Instantly

    Offer available for limited time
    ( Take advantage of free credits 👇 )
    DigitalOcean Referral Badge

    Related Posts


    © 2022 FreeCourseUniverse. All Rights Reserved