Event Sourcing

Architecture 🔴 Senior

Definition

Stocke l'etat comme une sequence immuable d'evenements plutot que comme l'etat courant. L'etat se reconstruit en rejouant les evenements.

Analogie

Un releve bancaire : tu ne stockes pas le solde, mais l'historique de toutes les transactions.

Exemple de code

const events = [
  { type: 'AccountOpened', balance: 0 },
  { type: 'MoneyDeposited', amount: 100 },
  { type: 'MoneyWithdrawn', amount: 30 },
];
const balance = events.reduce(applyEvent, 0); // 70

Cas d'usage

Audit trail complet, systemes financiers, undo/redo, debug temporel.

Anti-pattern

Evenements mutables ou supprimes — on perd la propriete d'immutabilite.

Termes lies

#architecture#interview#architecture-style