La stack MEAN : de quoi s'agit-il ?

Vous avez déjà entendu parler de la pile MEAN ? Non ? Il s'agit d'une collection de technologies JavaScript qui permet la création de projets full-stack. Il ne s'agit donc ni d'un framework ni d'un terme technologique au sens propre, mais plutôt d'un assortiment d'outils qui peuvent être utilisés ensemble pour développer un projet complet.

La définition et les principes de la Stack MEAN

MEAN est une stratégie d'empilement. Cependant, de quelle stratégie d'empilement s'agit-il ? L'ensemble des technologies utilisées sur un projet de développement est désigné par le terme de stack (littéralement, " pile " en français). Elle comprend de ce fait des technologies front-end et back-end, par exemple dans le cas d'un projet web. 

Il existe aujourd'hui d'innombrables combinaisons (ou piles) de technologies différentes, étant donné leur nombre. Et MEAN n'est que l'une d'entre elles, mais elle a gagné suffisamment de terrain pour inspirer des solutions permettant de construire des projets basés sur elle.

Quelques détails de la pile MEAN

Il est temps de revenir sur la composante technique de Stack MEAN. Déjà, MEAN est l'abréviation des quatre technos qui composent le groupe :

MongoDB

MongoDB, une technologie de base de données NoSQL utilisée dans la pile MEAN. Le magasin de données NoSQL le plus populaire est MongoDB. Cette technologie, qui a été introduite pour la première fois en 2009, a remplacé les bases de données SQL par l'idée d'une base de données non relationnelle. 

En d'autres termes, Mongo organise les données sous la forme de documents plutôt que de tables avec des relations entre elles. Étant donné que toute la technique de la pile est basée sur JavaScript, cette SGDB est parfaitement adaptée, même si les documents sont stockés au format JSON. Cela facilite leur communication et leur interprétation, tant sur le back-end que sur le front-end.

Express

Express désigne un framework basé sur Node.js qui a été utilisé pour construire le serveur web de la pile. Par conséquent, la pile MEAN embarque Express au niveau du back-end. Aujourd'hui, de grandes organisations comme Netflix et PayPal utilisent le framework Express, qui est basé sur Node.js. Depuis 2010, cet outil a la capacité unique d'aider au développement rapide du back-end en utilisant JavaScript de manière minimaliste. 

Minimaliste, car un serveur web peut être construit avec seulement quelques lignes de code. L'utilisation de JavaScript ici, contrairement à la grande majorité des frameworks backend, est ce qui le rend intéressant (dont beaucoup utilisent du PHP, comme Symfony ou Laravel). Cela suit la logique de la technique de la pile "tout JavaScript". Express agira comme le back-end technologique qui connecte le front-end d'Angular à MongoDB.

Angular

Angular est le front-end technologique de la pile MEAN. La première version d'Angular, sortie en 2016, était un framework front-end de Google qui était initialement basé sur son parent, AngularJS. C'est l'un des trois principaux frameworks JavaScript, avec React et Vue.js, et il est basé sur la conception MVC. Angular est probablement la technologie de la pile la plus interchangeable. 

On peut très bien utiliser React ou Vue au profit d'un framework JavaScript qui permet de faire (plus ou moins) la même chose que les autres. Ensuite, vous verrez la MEAN ou la MEVN. Comme la pile de MEAN date de 2013, alors qu'Angular avait un avantage sur ses rivaux, il semble probable que MEAN se base sur Angular plutôt que sur l'un de ses deux cousins. Ce qui n'est plus forcément vrai aujourd'hui

Node.js

Sa base est en fait Node.js, le dernier composant de la pile. Pour faire simple, cette technologie de 2009 est un environnement de bas niveau côté serveur qui prend en charge l'exécution de JavaScript. Cela permet de développer un serveur web sans s'appuyer, par exemple, sur Nginx ou Apache. 

De nombreux frameworks, dont Express, qui est également un composant de la pile, ont été développés sur la plateforme Node. Par conséquent, Node inclut la pile entière en plus de l'environnement d'exécution sur lequel Express est basé. C'est le composant le plus important et le plus indispensable de la pile technique.

Les avantages de l'empilement MEAN

Par conséquent, l'ensemble technologique recommandé pour un projet full stack est la pile moyenne. Mais il est important de considérer les avantages avant de décider d'utiliser ou non cette pile. Les avantages de la pile MEAN sont indéniables. Parmi eux, on compte :

- L'utilisation de JavaScript comme langage unique, ce qui facilite le développement, surtout si un seul développeur est impliqué ;

- Toutes les technologies de la pile sont connues, largement utilisées et disposent d'une grande communauté, ce qui indique un entretien rapide et une laide facilement disponible ;

- Les projets MEAN peuvent être facilement créés.