La couche métier, également appelée logique métier ou business logic, est la partie de l’application qui contient les règles, les calculs et les processus spécifiques au domaine d’activité.
En détail :
Rôle :
Implémenter les règles métier (ex : calcul de prix, éligibilité, validation).
Gérer les workflows (ex : processus de commande, approbation).
Appliquer les politiques de sécurité (autorisations, rôles).
Orchestrer les appels entre les autres couches.
Composants clés :
Services : contiennent les opérations métier.
Domain Models : représentent les entités métier (ex : Client, Commande).
Workflows : enchaînements d’étapes (ex : validation de commande).
Règles de validation complexes.
Langages/Frameworks :
Java (Spring), Python (Django, FastAPI), C# (.NET Core), PHP (Laravel), Node.js (NestJS).
Bonnes pratiques :
Séparation des préoccupations : indépendante de la présentation et des données.
Testabilité : facile à tester unitairement.
Réutilisabilité : peut être appelée par différentes interfaces (web, mobile, API).
Documentation : claire et à jour.
Exemples concrets :
Calcul du prix total d’une commande (TVA, remises, frais de port).
Vérification des droits d’accès d’un utilisateur (rôles, permissions).
Validation des données avant enregistrement (age, plafond, éligibilité).
En résumé : La couche métier est le cerveau de l’application. Elle contient l’intelligence fonctionnelle et doit être robuste, testée et indépendante des technologies d’interface.