Dominios, hexágonos y otras hierbas en el desarollo de aplicaciones





Hexagonal Architecture

AKA Ports & Adapters

“Create your application to work without either a UI or a database so you can run automated regression-tests against the application, work when the database becomes unavailable, and link applications together without any user involvement”
— Alistair Cockburn
Hexgonal architecture

Clean architecture

Robert C. Martin
AKA Uncle Bob

Clean Architecture

Domain Driven Design

Strategic Design

Ubiquitous Language

Ubiquitous Language

Bounded Context

Subdomains

Context Mapping

Tactical Design

Entities

Entity

Value object

Value object

Design with aggregates

Aggregates

Domain Events

Domain Event

Event Sourcing

Event sourcing is about storing immutable events as the source of truth to derive any state of the whole system (aggregates) at any time

events
events

Command Query Responsibility Segregation

“CQRS is simply the creation of two objects where there was previously only one”
— Greg Young
Command–query separation (CQS)
— Bertrand Meyer
Single Responsibility Principle (SRP)
— Robert C. Martin
Command Query Responsability Segregation Pattern
Command Query Responsability Segregation Implement

Achtung!


  • No es receta para todo... (No silver bullet)
  • Aplicar con precaución... (gaseosa)
  • Consulta con el médico... (dolor asegurado)

Oh! Yeah!...


Gracias

Oscar Vítores


Resources

Resources