Skip to content

Architectural Design Patterns

Overview

Design patterns are proven solutions to recurring architectural challenges. Unlike principles, which are conceptual, patterns are concrete blueprints you can apply in practice.

This section covers classic and modern patterns — from layered architecture to CQRS and strangler fig — with Java-first examples, diagrams, and case studies.


Lessons

  1. Layered (Tiered) Architecture Pattern
    Classic 3-tier and n-tier designs.
    Start Lesson →

  2. Hexagonal (Ports & Adapters) Architecture Pattern
    Keeping business logic independent.
    Start Lesson →

  3. Onion Architecture Pattern
    Domain-centric design with concentric rings.
    Start Lesson →

  4. Microservices vs Modular Monolith
    When to split a monolith, Conway’s Law.
    Start Lesson →

  5. Event-Driven Architecture Pattern
    Decoupling services with asynchronous events.
    Start Lesson →

  6. Event Sourcing Pattern
    Capturing state changes as immutable events.
    Start Lesson →

  7. CQRS (Command Query Responsibility Segregation) Pattern
    Separating reads from writes.
    Start Lesson →

  8. Saga Pattern
    Distributed transactions via orchestration or choreography.
    Start Lesson →

  9. Strangler Fig Pattern
    Incrementally replacing legacy systems.
    Start Lesson →

  10. Circuit Breaker Pattern
    Preventing cascading failures.
    Start Lesson →

  11. API Gateway / Backend for Frontend (BFF) Pattern
    Single entry point, client-specific facades.
    Start Lesson →

  12. Database per Service Pattern
    Microservices owning their data.
    Start Lesson →


Connect: LinkedIn

© 2025 Official CTO. All rights reserved.