[Actualité] Comment convaincre votre DSI d'adopter Node.js et AngularJS pour remplacer JEE
par
, 27/12/2015 à 19h47 (5275 Affichages)
JEE possède des avantages qui en font une plateforme de développement open source sans égale dans la catégorie des systèmes d'information métier de grandes dimensions.
En effet, il permet d'écrire rapidement des objets métier stockés en SGBD/R, les fameux EJB. Au-delà de permettre la manipulation de simples CRUD (create – read – update – delete), la technologie JEE permet de faire face à la montée en charge en clonant les « tiers » (aussi appelé scalabilité) ou en offrant des mécanismes presque intrinsèques de sécurisation de l'application. JEE offre aussi des options pour implémenter le MVC comme les célèbres JSF (standard JEE) ou le GWT (à l'initiative de Google).
En revanche, pour les applications de petites ou de moyennes dimensions, on pourrait se demander si le choix de cette technologie n'est pas disproportionné. Car le développement JEE impose au développeur la maitrise de toute une pile d'outils compagnons de ce langage. Pour n'en dire que quelques mots, nous pouvons parler d'outils :
de Build comme Maven, qui peut nécessiter la création et l'administration d'un entrepôt ;
intégration continue comme Jenkins qui s’exécutera dans un serveur TOMCAT ;
ou de qualimétrie comme sonar.
Développer en JEE impose donc de maitriser toute une pile logicielle. Quant à la mise en production d'une application JEE, cela nécessite d'utiliser des ressources en CPU et RAM très importantes sur la plateforme d’hébergement.
Aussi, il serait intéressant de trouver une technologie qui permettrait de développer une application aussi facilement et qui soit beaucoup moins exigeante en ce qui concerne l'environnement de développement et la capacité d'accueil.
Cette technologie existe et elle est open source. Il s'agit de Node.js et AngularJS, le premier permet de développer côté serveur et le second côté client. Le langage de cette pile logicielle est le JavaScript.
Node.js ne nécessite pas de serveur d'application ni même de serveur HTTP, car un processus qui écoute les requêtes HTTP est créé par le développeur autant que de besoin.
AngularJS, quant à lui, permet d'exploiter le potentiel de plus en plus important et souvent inutilisé du client en s’exécutant totalement côté navigateur.
Le JavaScript est connu de tous les développeurs et le passage est automatique pour un développeur JAVA.
Node.js permet de manipuler des CRUD, mais surtout des bases de données noSQL orientées langage d'échange du JavaScript (JSON). Et AngularJS permet de remplacer astucieusement les JSF et AJAX (qu'il utilise en sous-main). Alors pour des petites applications, pourquoi ne pas l'essayer ?
Sur un prochain post, je montrerai comment migrer en douceur de JEE vers AngularJS et Node.js.
Et vous ?
Qu'en pensez-vous ?