Application Service

Architecture 🟡 Mid

Definition

Orchestre les use cases de l'application : coordonne le domaine, les repositories et les services externes. Ne contient pas de logique metier.

Analogie

Un chef de projet : il coordonne les equipes mais ne code pas lui-meme.

Exemple de code

class PlaceOrderUseCase {
  async execute(dto) {
    const order = Order.create(dto);
    await this.repo.save(order);
    await this.eventBus.publish(order.events);
  }
}

Cas d'usage

Orchestrer un use case complet : validation, persistance, publication d'events.

Anti-pattern

Mettre de la logique metier dans le service applicatif au lieu du domaine.

Termes lies

#architecture#interview#ddd