L’architecture hexagonale en 5 min

L’objectif principal de l’architecture hexagonale est de découpler la partie métier d’une application de ses services techniques. Ceci dans le but de préserver la partie métier pour qu’elle ne contienne que des éléments liés aux traitements fonctionnels. Cette architecture est aussi appelée “Ports et Adaptateurs” car l’interface entre la partie métier et l’extérieur se fait,…

Continuer à lire

Eviter d’effectuer des “casts” avec Bridge et Visiteur

Lorsqu’on intervient sur du code existant, la plupart du temps, on manipule des objets sous leur forme générique, par l’intermédiaire de classes abstraites ou d’interfaces. Dans la majorité des cas, les membres exposés par la classe abstraite ou par l’interface suffisent à utiliser l’objet en faisant appel à des fonctions ou des données membres. Toutefois,…

Continuer à lire

Microservices en 10 min: tests et déploiement (partie 3)

PARTIE 1 PARTIE 2 PARTIE 3 Sommaire général Concevoir des microservices Appels entre Microservices Intégration continue et implémentation des tests Références Sommaire Intégration continue Effectuer une “build” pour tous les services Effectuer une “build” par service Plusieurs “build pipelines” Appliquer des tests Pyramide des tests Tests unitaires Tester un service   Tests de performance   Tests “end-to-end”…

Continuer à lire

Microservices en 10 min: appels entre services (partie 2)

PARTIE 1 PARTIE 2 PARTIE 3 Sommaire général Concevoir des microservices Appels entre Microservices Intégration continue et implémentation des tests Références Sommaire Choix des interfaces Utiliser le “semantic versioning” Créer un nouveau point d’accès en cas de “breaking changes” Appels synchrones ou asynchrones Tolérer les échecs partiels Pattern “circuit breaker” Chef d’orchestre ou chorégraphie Service…

Continuer à lire

Microservices en 10 min: références

PARTIE 1 PARTIE 2 PARTIE 3 Sommaire général Concevoir des microservices Appels entre Microservices Intégration continue et implémentation des tests Références Références Livres: Building Microservices: https://www.amazon.fr/Building-Microservices-Sam-Newman/dp/1491950358 Microservice Architecture: Aligning Principles, Practices, and Culture: https://www.amazon.fr/Microservice-Architecture-Aligning-Principles-Practices/dp/1491956259 Domain-Driven Design vite fait: http://blog.infosaurus.fr/public/docs/DDDViteFait.pdf Domain-Driven Design: Tackling Complexity in the Heart of Software: https://www.amazon.fr/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215 Designing and Deploying Microservices: https://www.nginx.com/resources/library/designing-deploying-microservices/ Généralités:…

Continuer à lire