Partager via


Concevoir la couche d’application de microservice et l’API web

Conseil / Astuce

Ce contenu est un extrait du livre électronique 'Architecture des microservices .NET pour les applications .NET conteneurisées', disponible sur .NET Docs ou en tant que PDF téléchargeable gratuitement, lisible hors ligne.

Architecture de microservices .NET pour les applications .NET conteneurisées - vignette de couverture du livre électronique.

Utiliser les principes SOLID et l’injection de dépendances

Les principes SOLID sont des techniques critiques à utiliser dans toute application moderne et stratégique, comme le développement d’un microservice avec des modèles DDD. SOLID est un acronyme qui regroupe cinq principes fondamentaux :

  • Principe de responsabilité unique

  • Principe ouvert/fermé

  • Principe de substitution de Liskov

  • Principe de séparation des interfaces

  • Principe d’inversion de dépendance

SOLID est plus sur la façon dont vous concevez vos couches internes d’application ou de microservice et sur le découplage des dépendances entre elles. Elle n’est pas liée au domaine, mais à la conception technique de l’application. Le principe final, le principe d’inversion de dépendance, vous permet de dissocier la couche d’infrastructure du reste des couches, ce qui permet une meilleure implémentation découplée des couches DDD.

L’inversion de dépendances est une façon d’implémenter le principe éponyme. Il s’agit d’une technique permettant d’atteindre un couplage libre entre les objets et leurs dépendances. Au lieu d’instancier directement des collaborateurs ou d’utiliser des références statiques (autrement dit, à l’aide de nouveaux...), les objets dont une classe a besoin pour effectuer ses actions sont fournis à (ou « injectés dans ») la classe. Le plus souvent, les classes déclarent leurs dépendances via leur constructeur, ce qui leur permet de suivre le principe des dépendances explicites. L’injection de dépendances se base généralement sur des conteneurs d’inversion de contrôle (IoC) spécifiques. ASP.NET Core fournit un conteneur IoC intégré simple, mais vous pouvez également utiliser votre conteneur IoC favori, comme Autofac ou Ninject.

En suivant les principes SOLID, vos classes tendent naturellement à être petites, bien structurées et facilement testables. Mais comment savoir si trop de dépendances sont injectées dans vos classes ? Si vous utilisez di via le constructeur, il sera facile de détecter cela en examinant simplement le nombre de paramètres de votre constructeur. S’il y a trop de dépendances, il s’agit généralement d’un signe ( odeur de code) que votre classe essaie de faire trop, et est probablement en violation du principe de responsabilité unique.

Il faudrait un autre guide pour couvrir SOLID en détail. Par conséquent, ce guide vous oblige à avoir uniquement une connaissance minimale de ces rubriques.

Ressources supplémentaires