Programmation avec Node.js: le guide complet – Claudia Alves (2020)

Programmation avec Node.js: le guide complet – Claudia Alves (2020)

C’est quoi Node.js ?Si tu codes déjà côté client, tu utilises forcément Javascript. Pourquoi ? Parce que tous les navigateurs sont équipés d’un moteur Javascript qui va permettre de traduire notre code Javascript en code machine.Et bien un jour, il y a un mec qui s’appelle Ryan Dahl qui a eu la brillante idée de prendre le moteur Javascript V8, c’est celui qu’on trouve dans le navigateur Chrome, et de l’utiliser en dehors du navigateur. Il a créé la plateforme Node.js !Node.js est très fréquemment utilisé pour écrire des services côté serveur appelés API (Application Programming Interface)Et au final, on peut dire que Node.js représente une alternative à des langages serveur comme PHP, Java ou Python.Cette alternative est devenue populaire dans pas mal d’entreprises et a même révolutionné pas mal de choses dans des grosses entreprises comme PayPal.PayPal qui utilisait du Java a décidé de tester Node.js sur une petite partie de son code et les résultats ont été plutôt bluffants. Il a fallu 2 développeurs Node.js au lieu de 5 développeurs Java pour construire la même chose Les développeurs de l’équipe Node.js ont fait le même travail que l’équipe Java en la moitié du temps 33% de lignes de code en moins et 40% de fichiers en moins en Node.js par rapport à Java La version Node.js est 35% plus rapide que celle de JavaAlors bien sûr, il ne faut pas s’emballer non plus et ces résultats peuvent être dus à plein d’autres facteurs, peut-être que les développeurs Node.js étaient excellents et les devs Java étaient nazes, on n’en sait rien.Mais ça fait tout de même réfléchir et ça place clairement Node.js comme une alternative de choix pour le back-end de nos applis web.DéfinitionsMaintenant je vais t’expliquer les avantages de Node.js mais j’ai pas envie de te balancer plein de termes techniques sans que tu les comprennes.Alors accroche-toi bien ! C’est le moment définition !Je vais aborder pas mal de notions qui te sont peut-être inconnues : On va parler de RTA, de SPA, de Single Thread et Multi Thread et de systèmes Blocking et Non Blocking.Alors déjà c’est quoi RTA ?RTA ça veut dire Real Time Applications, ce sont les applications en temps réel, ce sont ces applications qui ont besoin de se mettre à jour super fréquemment.Je te donne un exemple : les messageries instantanées style WhatsApp sont des RTA. Tu as besoin de connaitre les nouveaux messages immédiatement parce-que si tu reçois les messages de tes correspondants 10 minutes plus tard ça en ferait une très mauvaise appli….Et c’est quoi SPA ?Ce sont les initiales de Single Page Applications. Ce sont des applis dans lesquelles il n’y a qu’une page html et le contenu de cette page change en fonction des actions de l’utilisateur. C’est différent du modèle ou il y a plusieurs pages html. En général, on utilisera des frameworks comme Angular, Vue ou React pour créer ce genre d’applications web.Parlons maintenant de Multithread et Single thread !Multithread c’est la capacité à effectuer plusieurs tâches en même temps, en parallèle et bien sûr Single thread c’est le fait que tu ne t’occupes que d’une tâche à la fois.En gros tu peux représenter ça dans ta tête en imaginant qu’un système multithread a plusieurs petits bonhommes et que tu peux confier à chacun d’eux une tâche et ils travaillent en parallèle, donc au final ton système est multitâche.Alors que le système single thread lui n’a qu’un petit bonhomme et tu peux donc lui confier qu’une seule tâche à la fois.



Laisser un commentaire

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