Utilisation de MapStruct
Nous avons vu que notre code est organisé en couches. Nous pouvons utiliser le modèle DTO, qui consiste à définir des classes simples pour transférer des données entre les couches. Un des principaux problèmes que l’on rencontre réside dans l’écriture d’une grande quantité de code de mappage. Il existe une bibliothèque Java MapStruct qui permet d’automatiser, via de la génération de code, la phase de mapping à travers la description de celle-ci par des interfaces simples et des annotations sur les classes. MapStruct peut s’utiliser avec le CDI de Spring conjointement avec Lombok en créant sous la forme d’un bean le Mapper. La documentation se trouve ici : https://mapstruct.org/documentation/spring-extensions/reference/html/
1. Approche API-First
La conception de backend pour des Web Services SOAP ou REST existe depuis des années. Pendant très longtemps l’API était déduite des appels codés dans les backends. Nous codons un service et nous ajoutons et publions ensuite, parfois de manière automatisée, l’API correspondant à ce service. Il en résulte des API qui ne sont pas toujours idéales.
Une nouvelle approche consiste à prédéfinir l’API pour ensuite coder l’application pour qu’elle rende le service appelé.
Il n’y a pas de normes prédéfinies pour l’API...