La mode est aux micro services, aux conteneurs légers, ou de manière générale à la conception de services simples regroupés en APIUne API est un programme permettant à deux applications distinctes de communiquer entre elles et d’échanger des données..
La révolution des APIs change la manière de concevoir les applications. Historiquement, lorsqu’on souhaitait faire du web en Java, il était nécessaire de concevoir une application capable de servir à la fois des pages HTML statiques et des pages webs dynamiques, ainsi que d’encapsuler la logique métier de l’application.
Dans le bouillonnement des débuts de JavaLangage de développement très populaire !, de nombreux frameworks web ont vu le jour, tels que JSP et JSF, portés par des serveurs webs tels que Tomcat, et des serveurs d’applications Java EE tels que JBoss, WebSphere, WebLogic… L’idée ici n’est pas de faire l’historique des technologies, mais de mettre en perspective le contexte général de leur émergence avec leurs objectifs initiaux.
Deux plateformes se sont progressivement imposées au fil du temps : le standard officiel Java EE et le framework Spring. Chacun a ses avantages, et chaque chapelle se targue bien sûr d’avoir fait le meilleur choix. Les deux mondes s’influencent, et partagent le principe de la génération des pages côté serveur.
Depuis quelques années, ce principe est largement remis en cause dans l’univers du web. Les principales raisons sont :
Les informaticiens étant des personnes réfléchies et partisanes du moindre effort ont décidé de couper ce lien fort qui existait entre la génération de la page web et le traitement des données. Ainsi, les données sont désormais traitées au sein des API et la gestion de la page est déportée côté client (le navigateur en l’occurrence, ou l’application mobile).
Cette évolution représente un changement de paradigme très profond. Elle remet en cause toutes les technologies arrivées à maturité et installées dans le concept ancien où le serveur fait tout et le client ne fait rien. Elle est portée par l’essor de trois framework Javascript majeurs : Angular, ReactReact est un framework de développement JavaScript populaire., et Vue.jsFramework JavaScript populaire. . Peu importe votre choix, nous nous intéressons ici à la manière de concevoir son API.
Les web services des API gèrent deux grands formats de données : SOAPSOAP (Simple Object Access Protocol) est un protocole de communication. (un formalisme XML) et RESTREST (REpresentational State Transfer) est un style d'architecture logicielle qui fonctionne sous un certain nombre de contraintes. (format libre en réalité, JSON dans la plupart des cas). L’objectif est toujours le même : fournir un service déporté à une application tierce. Mais on privilégiera le REST pour les applications web rapides, et le SOAP pour des applications dont le besoin de contrôle est supérieur.
Revenons à notre sujet : en Java, Spring comme Java EE permettent depuis longtemps de réaliser des web services. Néanmoins, dans le cas de Java EE, cela nécessite le recours à un serveur d’application certifié, tel que WildFly, alors qu‘en Spring, un simple serveur web (léger) tel que Tomcat suffit.
Déployer une API de services sur un serveur d’applications Java EE est complexe : configuration, packaging, sélection des modules… cela nécessite du temps et de l’expertise. A l’heure actuelle, Java EE avance lentement vers la voie du cloud (trop lentement, serait-on tenté de dire).
De son côté Spring propose Spring Boot, une approche module particulièrement rapide et efficace pour créer une API de web services. En quelques lignes de code, avec un (tout) petit projet Maven ou Gradle, on obtient un .jar directement exécutable. Tout est compris, les briques du serveur web dont vous avez besoin, et rien d’autre. Vous pouvez très simplement utiliser les frameworks dont vous avez besoin (Hibernate, par exemple, ou n’importe quelle brique du Spring classique), Spring vous package le tout en un rien de temps.
En un mot, Spring Boot vous offre toute la puissance d’un serveur d’applications en ne conservant que ce dont vous avez réellement besoin. Et les performances sont au rendez vous ! La sérialisation JSON fonctionne nativement, et le routage à base d’annotations est très facile à prendre en main. Bref Spring Boot, on recommande !
Amazon Web Services (AWS) propose une large gamme de services et parmi eux, un bon nombre de servies d’hébergement intéressants. Aujourd’hui, nous allons vous parler de l’un d’entre eux : le service d’hébergement Elastic Bean
Découvrez la planche #64 !
Vue.js est l'un des frameworks JavaScript les plus populaires du moment, et devance même Angular en termes d'utilisation selon le State of JS 2023 ! Dans cet article, nous allons faire un focus sur la réactivité dans Vue.js, un élément crucial à prendre en compte pour créer des interfaces dynamiques et performantes. Dans Vue.js, celle-ci peut sembler complexe à première vue, surtout quand on la compare à d'autres frameworks comme React et son hook useState ou Angular et ses Observable. Mais en réalité, une fois les concepts clés découverts, Vue.JS est plus facile à prendre en main grâce à certains outils et techniques qui simplifient grandement la gestion de cette réactivité. Découvrons comment optimiser vos développements !