Skip to content

Latest commit

 

History

History
74 lines (50 loc) · 1.22 KB

File metadata and controls

74 lines (50 loc) · 1.22 KB

Buenas practicas

DDD funciona mejor cuando se aplica con criterio. Usarlo como una lista de patrones puede producir mas complejidad que claridad.

Empieza por el lenguaje

Antes de crear carpetas, entiende:

  • Que problema resuelve el sistema.
  • Que palabras usa negocio.
  • Que reglas son criticas.
  • Que excepciones existen.
  • Que decisiones cambian a menudo.

Modela comportamiento

Evita entidades sin comportamiento.

Mal:

order.status = confirmed

Mejor:

order.confirm()

El metodo puede validar invariantes.

Usa value objects

Sustituye valores ambiguos:

string email
number amount
string currency

Por conceptos:

EmailAddress
Money
Currency

No conviertas DDD en ceremonia

No todo necesita:

  • Factory.
  • Specification.
  • Domain service.
  • Repository.
  • Event.

Usa patrones cuando resuelvan un problema real.

Protege limites

No dejes que DTOs, ORMs o eventos externos definan tu dominio interno.

Checklist de revision

  • El codigo usa lenguaje del negocio.
  • Las reglas viven en el dominio.
  • Los agregados son pequenos y consistentes.
  • Los contextos tienen limites explicitos.
  • Las integraciones no filtran modelos internos.
  • Los tests describen reglas de negocio.