Mønstre til design af fleksibel arkitektur i node.js (CQRS / ES / Onion)

I dette indlæg har jeg præsenteret et projekt, der bruger CQRS og Event Sourcing mønstre. Det er organiseret ved hjælp af løgarkitektur og skrevet med TypeScript.

“Fleksibel” hvordan?

Jeg bruger udtrykket fleksibel til at fremme en arkitektur, der er i stand til at tilpasse sig forskellige miljøer. Mere præcist prøver jeg at:

  • separat kerneforretningslogik fra implementeringsdetaljer
  • være uafhængig af enhver database, ramme eller service
  • Brug enkle rene funktioner, når det er muligt
  • gøre projektet let at skalere "vandret"
  • gøre projektet let at teste
  • Brug typesystem primært til at kommunikere det ”allestedsnærværende sprog” i kerneområdet

Opdatering: Dette indlæg flyttes til min egen blog. Du kan læse det her:
Mønstre til design af fleksibel arkitektur i node.js (CQRS / ES / Onion)