Réflexions à propos de NodeJS et de Javascript plus globalement
Posté par Stéphane Klein le mercredi 18 avril 2012 dans les catégories Informatique, Opinions, Python, Javascript, Réflexions, Web-dev, Node.js, Développement, Comparaison | View Comments
Cela fait quelques jours que je me pose la question suivante : « Est-ce que Node.js ne va pas devenir une technologie incontournable / majeur dans les 2 ans qui viennent ? »
Le contexte
Cependant, mon regard se tourne de plus en plus vers Node.js... je n'ai pas franchi le pas, je n'ai rien développé en Node.js… mais je me demande si je ne passe pas à coté de quelque chose d'important.
Les forces de Node.js
Bien que Node.js date seulement de 2009 :
- il a déjà un bon système de package : Node Package Manager que la grande majorité de la communauté semble utiliser
- il a déjà une très forte communauté, de très nombreuses librairies, exemple : plein de librairie classées, déjà plus de 9000 packages sur npm
- de plus en plus de sociétés semblent l'utiliser
tous les développeurs web (front-end) connaissent le langage, il est très populaire. Par conséquent, pour passer à Node.js il n'y a pas le frein d'apprendre un nouveau langage comme ça serait le cas avec l'utilisation d'un framework web basé sur Ruby ou Python. Je pense que dans les mois qui viennent, de nombreux développeurs PHP vont passer à Node.js… surtout ceux qui regardaient ailleurs mais qui ne souhaitent pas apprendre un nouveau langage.
- la possibilité de partager du code (librairies communes…) entre la partie client et serveur peut être intéressant. La question se pose de plus en plus étant donnée qu'on est de plus en plus amené à effectuer beaucoup de traitement coté client (exemple avec Backbone.js).Dernièrement, dans tous mes projets de développement web, j'ai utilisé un moteur de template coté client en plus du moteur de template coté serveur.Je dois gérer de plus en plus souvent une couche modèle coté client. Des vues coté client… Cela fait donc plein d'éléments en doubles, utilisés une fois sur le serveur, une fois sur le client. Donc deux technologies à maîtriser.Ces derniers jours, la visualisation du screencast du framework javascript Meteor m'a mis la puce à l'oreille.Autre exemple, il est possible d'utiliser la même API Canvas coté client et coté serveur (avec node-canvas).
Node.js semble être très rapide, ça tient très bien la monté en charge.
La vitesse de l'interpréteur Javascript est en constante progression V8 (JavaScript engine)
Faiblesses de Node.js
Je ne sais pas si mes remarques sont exactes, je n'ai aucune expérience en Node.js.
- Exemple dans la partie Bad Use Cases du guide Felix's Node.js Convincing the boss guide il est indiqué que les framework Node.js sont moins matures que ce que l'on peut trouver en Ruby, Python et Php (bon pour ce dernier j'ai des doutes, je pense que la communauté Node.js est déjà plus mature, plus structurée que la communauté Php… enfin bon…).
- Je ne pense pas que Sequelize soit aussi mature que SQLAlchemy
- Je n'ai pas trouvé d'outil comme Whoosh en Javascript (c'est un moteur de recherche léger). J'ai tout de même trouvé Node-xapian
Je ne sais pas si il est encore tôt pour passer à Node.js mais si la communauté continue à être aussi dynamique que ces 2 dernières années… alors les pièces manquantes seront bientôt créées.
Est-ce que l'on va retrouver Javascript partout ?
Voici une petite liste :
- Javascript dans les navigateurs web
- Javascript coté serveur (Node.js)
- Javascript dans Qt Introduction QML + Qt Quick qui semble vraiment super puissant
- Les possibilités d'utiliser Gtk + JS : gjs and Gtk+
- Gnome Shell est en grande partie développé en Javascript. Ses extensions sont entièrement développé en JS
- Sur mobile WebOS et Boot to Gecko
Quand je vois cette liste, je me pose sérieusement la question : est-ce que Javascript est le langage incontournable de ces 10 prochaines années ? Certes il est déjà incontournable dans le navigateur, mais pour le reste ?
Édition 5 mai 2012 :
- j'ai publié ce billet sur LinuxFR, j'ai reçu 90 commentaires…
- j'ai publié ce billet sur la mailing list de l'Afpy, j'ai reçu 25 commentaires… malheureusement les archives de cette liste n'est pas publique
merci beaucoup pour vos retours d'expériences !


