Search

Lessons (15)

  • Hexagonal Architecture (Ports & Adapters)

    Put the application in the centre and plug everything else in through ports and adapters. Driving vs driven …

  • Onion Architecture & Clean vs Hexagonal vs Onion

    … every outside actor (UI, test, DB) is just an adapter on a port Layers inside the core : domain …

  • Clean Architecture

    … one action each Entities + interfaces RegisterUser , PlaceOrder 🔵 Interface adapters Controllers, presenters, repositories Use cases UserController , PostgresUserRepo 🟣 Frameworks …

  • Clean Architecture in Depth

    … one class per user action The application's behaviour changes Entities + port interfaces 🔵 Interface adapters Controllers, presenters, gateways …

  • Which Pattern Do I Need?

    … Proxy controls access to the same behaviour. Adapter vs Facade Adapter makes one interface fit another. Facade simplifies …

  • Structural Patterns: How to Connect Objects

    … Adapter 🔌 Analogy: A travel plug adapter. Your US laptop plug doesn't fit a European socket; the adapter …

  • Serverless Architecture

    … Moving to containers later then means writing a new adapter, not rewriting the logic. ts // handler.ts: thin …

  • Choosing an Architecture

    … Hexagonal + tactical DDD"] oa[HTTP adapter] -- oc((core)) -- ob[(Postgres adapter)] end subgraph Cat["📦 Catalog: vertical slices (mostly …

  • What Are Design Patterns?

    … How do I connect objects into bigger structures? Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy 🗣️ Behavioral How …

  • YAGNI: You Aren't Gonna Need It

    … When code is easy to change, you don't need to predict the future, because you can adapt …

  • Domain-Driven Design: Tactical Patterns

    … the domain (a port), implemented in infrastructure (an adapter) export interface OrderRepository { get(id: OrderId): Promise<Order ; // loads …

  • What Is Software Architecture?

    … MVVM] C[Clean Architecture] H["Hexagonal<br/ (Ports & Adapters)"] O[Onion] V[Vertical slices] end subgraph Dom["Modelling …

  • Finding Service Boundaries with DDD

    … HDR"] -- ACL["🛡️ Anti-corruption layer<br/ (an Adapter!)"] -- New["✨ New Ordering service<br/ clean model:<br/ Customer …

  • Vertical Slice Architecture & the Modular Monolith

    … A popular combination: vertical slices for the application layer + a shared domain model in the centre + adapters at …

  • Domain-Driven Design: Strategic Design

    … boolean }; // The ACL is an Adapter that keeps legacy concepts OUT of our model export class ErpCustomerTranslator { toBillingCustomer …