Java 2021 : Quels Frameworks Et Tendances Pour Cette Nouvelle Année ?

D’un point de vue technique, les frameworks dans le monde Java sont l’un des éléments les plus différenciants. Il est difficile de voir une application en Java sans utiliser d’outils, en utilisant uniquement la plate-forme Java SE. Avec la nouvelle année, il est naturel que des questions se posent, telles que les frameworks disponibles dans les nouveaux projets, les types de frameworks et les tendances. Le but de cet article concerne des frameworks les plus populaires dans le monde Java et des attentes pour l’année prochaine dans l’un des langages les plus populaires au monde.

Il est incontestable que les annotations, ou la metadata facility, ont beaucoup facilité de nombreux usages. En général, la grande majorité des frameworks utilisent ce type de ressources. Cependant, quels changements sont liés au moment où ces annotations seront lues :

  • A l’exécution : les informations des annotations sont lues dès le démarrage de l’application Java généralement en utilisant  l’API Java Reflection. Ce qui facilite la pluggabilité et / ou l’effet plug-and-play à partir duquel il est possible de modifier le comportement de l’application simplement en ajoutant des dépendances. Un autre point est la facilité d’encapsulation. Par exemple, grâce à la réflexion, il est possible d’avoir un attribut sans setter.
  • A la compilation : cette approche vise à amener tous les traitements et analyses des métadonnées Java au moment de la compilation plutôt qu’au moment de l’exécution. Ce type d’approche a tendance à diminuer le temps de démarrage et également la consommation de mémoire. Une façon de mettre en œuvre cette approche consiste à utiliser le Java Annotation Processor.

Comme mentionné précédemment, la lecture de métadonnées change considérablement la donne pour les frameworks, car en général, les frameworks les plus utilisés cette année ont des caractéristiques très similaires :

  • Plus qu’un framework, une plate-forme : les frameworks les plus célèbres de l’année 2020 et qui ont tendance à se démarquer en 2021 se distinguent par une collection d’outils pour aider les développeurs à différents niveaux, que ce soit en matière de sécurité d’API ou d’intégration d’une API REST.
  • Injection de dépendances : en général, un conteneur chargé de gérer les dépendances au sein d’une application. Un excellent outil pour rester faiblement couplé au sein d’une architecture.
  • Accès aux bases de données et services : la connexion d’une base de données, qu’elle soit relationnelle ou non relationnelle, est importante; après tout, si l’application est l’esprit, les données sont le cœur d’un système. Ce point réduit le code peu utile mais nécessaire (boilerplate code) requis pour que l’application Java interagisse avec la base de données.
  • Configuration en dehors du code : les informations d’identification telles qu’un utilisateur de base de données et un mot de passe doivent être en dehors du code. Dans l’environnement idéal, le développeur ou l’équipe d’architecture n’a pas besoin de connaître ces informations, suivant les meilleures pratiques des douze facteurs d’application. Ces écosystèmes ont la possibilité d’écraser toutes les configurations via l’environnement. Il est possible d’avoir une configuration pour chaque environnement de manière transparente à l’application.

Sur la base de ces caractéristiques des outils Java mentionnés précédemment, les frameworks Java qui se démarquent sont :

  • Quarkus : le projet le plus récent, créé par Red Hat, dont l’objectif principal est d’avoir un démarrage rapide et une empreinte mémoire réduite comme avec des technologies comme NodeJS ou Go.
  • Micronaut : peut-être la première plate-forme en Java développée pour fonctionner très efficacement dans une architecture serverless.
  • Spring : issu d’un livre écrit par Rod Johnson, il est basé sur une extension et des améliorations autour de Java EE, actuellement Jakarta EE.
  • Jakarta EE/MicroProfile : pas nécessairement des frameworks, mais des spécifications. Ces projets animent et servent de base aux projets antérieurs. Le point important est que grâce aux spécifications, il est possible de changer la mise en œuvre directement, et nous avons plusieurs fournisseurs avec des implémentations telles que Wildfly, Payara, TomEE, entre autres.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *