{"id":36234,"date":"2024-11-15T23:46:21","date_gmt":"2024-11-15T23:46:21","guid":{"rendered":"\/tutoriels\/?p=36234"},"modified":"2025-12-12T15:06:44","modified_gmt":"2025-12-12T15:06:44","slug":"quest-ce-que-node-js","status":"publish","type":"post","link":"\/fr\/tutoriels\/quest-ce-que-node-js\/","title":{"rendered":"Qu&#8217;est-ce que Node.js : comment fonctionne-t-il et comment d\u00e9marrer"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Node.js est un environnement d&rsquo;ex&eacute;cution open-source et multiplateforme qui vous permet d&rsquo;ex&eacute;cuter JavaScript c&ocirc;t&eacute; serveur. L&rsquo;architecture de ce logiciel permet des transferts de donn&eacute;es efficaces, ce qui en fait un choix populaire pour la construction d&rsquo;applications en temps r&eacute;el et &eacute;volutives.&nbsp;<\/p><p class=\"wp-block-paragraph\">Ce tutoriel vous apprendra les bases de Node.js, notamment son fonctionnement et ses applications pratiques. Nous verrons &eacute;galement comment l&rsquo;installer sur votre serveur afin que vous puissiez d&eacute;marrer rapidement.&nbsp;<\/p><h2 class=\"wp-block-heading\" id=\"h-qu-est-ce-que-node-js\">Qu&rsquo;est-ce que Node.js ?<\/h2><p class=\"wp-block-paragraph\">Traditionnellement, <a href=\"https:\/\/www.hostinger.com\/fr\/tutoriels\/qu-est-ce-que-javascript\/\">JavaScript<\/a> ne fonctionnait que du c&ocirc;t&eacute; front-end, puisque le moteur d&rsquo;ex&eacute;cution n&rsquo;&eacute;tait disponible que dans les navigateurs web tels que Google Chrome. Le langage de programmation peut donc &ecirc;tre utilis&eacute; pour cr&eacute;er une application c&ocirc;t&eacute; client, &agrave; l&rsquo;instar d&rsquo;un site web dynamique.&nbsp;<\/p><p class=\"wp-block-paragraph\"><strong>Ryan Dahl <\/strong>a cr&eacute;&eacute; Node.js en 2009 en tant qu&rsquo;environnement d&rsquo;ex&eacute;cution l&eacute;ger et r&eacute;actif pour JavaScript. Ce logiciel permet aux d&eacute;veloppeurs d&rsquo;utiliser le langage de script comme code c&ocirc;t&eacute; serveur.&nbsp;<\/p><p class=\"wp-block-paragraph\">L&rsquo;utilisation de JavaScript c&ocirc;t&eacute; serveur permet aux d&eacute;veloppeurs d&rsquo;&eacute;crire le front-end et le back-end dans le m&ecirc;me langage. Cela permet de rationaliser le d&eacute;veloppement et la maintenance puisqu&rsquo;ils peuvent r&eacute;utiliser le m&ecirc;me code.<\/p><p class=\"wp-block-paragraph\">En outre, le d&eacute;veloppement du back-end en JavaScript permet &agrave; votre application de b&eacute;n&eacute;ficier du mod&egrave;le de programmation asynchrone de Node.js. &Agrave; la base, cette architecture permet &agrave; votre service web de r&eacute;pondre plus efficacement aux demandes multiples des utilisateurs.&nbsp;<\/p><p class=\"wp-block-paragraph\">Nous reviendrons sur ce concept dans la section suivante.&nbsp;&nbsp;<\/p><h2 class=\"wp-block-heading\" id=\"h-comment-fonctionne-node-js\">Comment fonctionne Node.js ?<\/h2><p class=\"wp-block-paragraph\">Pour comprendre le principe de fonctionnement de Node.js, vous devez comprendre les termes importants suivants.<\/p><p class=\"wp-block-paragraph\"><strong>Mod&egrave;le E\/S non-bloquant<\/strong><\/p><p class=\"wp-block-paragraph\">Pour traiter une demande d&rsquo;utilisateur, les serveurs traditionnels comme <strong>Apache <\/strong>et <strong>Tomcat <\/strong>utilisent un <strong>thread <\/strong>qui peut servir un client &agrave; la fois. Lorsque le nombre maximal de threads est atteint, une nouvelle demande doit attendre que les threads existants aient termin&eacute; leur t&acirc;che.<\/p><p class=\"wp-block-paragraph\">Les fils qui traitent encore les demandes des utilisateurs bloqueront les entr&eacute;es des nouveaux clients et ne transmettront pas les sorties &agrave; des services externes tels que les API ou les bases de donn&eacute;es. Cela peut entra&icirc;ner des goulets d&rsquo;&eacute;tranglement lors de pics de trafic avec de nombreuses connexions simultan&eacute;es.&nbsp;<\/p><p class=\"wp-block-paragraph\">Les paradigmes non bloquants signifient que le thread unique de Node.js peut recevoir et transmettre une nouvelle requ&ecirc;te sans attendre la fin de la requ&ecirc;te en cours. Un tel syst&egrave;me est appel&eacute; <strong>architecture asynchrone<\/strong>.&nbsp;<\/p><p class=\"wp-block-paragraph\"><strong>Architecture asynchrone<\/strong><\/p><p class=\"wp-block-paragraph\">L&rsquo;architecture <strong>synchrone <\/strong>traite les demandes des clients dans l&rsquo;ordre, ce qui signifie que le serveur web termine l&rsquo;op&eacute;ration en cours avant d&rsquo;en commencer une nouvelle.&nbsp;<\/p><p class=\"wp-block-paragraph\">En revanche, une application dot&eacute;e d&rsquo;une architecture <strong>asynchrone <\/strong>commencera une nouvelle op&eacute;ration en attendant les r&eacute;sultats d&rsquo;autres op&eacute;rations. D&egrave;s qu&rsquo;il re&ccedil;oit une r&eacute;ponse, le serveur web renvoie les donn&eacute;es au client.&nbsp;<\/p><p class=\"wp-block-paragraph\">L&rsquo;architecture asynchrone convient aux applications qui n&eacute;cessitent de r&eacute;cup&eacute;rer des donn&eacute;es aupr&egrave;s d&rsquo;autres services, comme les <a href=\"https:\/\/aws.amazon.com\/what-is\/api\/\" target=\"_blank\" rel=\"noopener\">interfaces de programmation d&rsquo;applications<\/a> (API) ou les bases de donn&eacute;es. Au lieu de rester inactif, le serveur web peut traiter de nouvelles demandes en attendant les r&eacute;ponses.&nbsp;<\/p><p class=\"wp-block-paragraph\">Bien qu&rsquo;excellente pour les t&acirc;ches d&rsquo;entr&eacute;e-sortie (E\/S), cette architecture rend Node.js plus gourmand en ressources CPU puisqu&rsquo;il n&rsquo;utilise qu&rsquo;un seul thread pour traiter plusieurs requ&ecirc;tes.&nbsp;<\/p><p class=\"wp-block-paragraph\"><strong>Ax&eacute; sur les &eacute;v&eacute;nements<\/strong><\/p><p class=\"wp-block-paragraph\">Dans Node.js, les <strong>&eacute;v&eacute;nements <\/strong>sont des signaux indiquant qu&rsquo;une certaine action s&rsquo;est produite. Par exemple, ils peuvent d&eacute;clencher une nouvelle op&eacute;ration ou l&rsquo;ach&egrave;vement d&rsquo;une t&acirc;che.&nbsp;<\/p><p class=\"wp-block-paragraph\">Les &eacute;v&eacute;nements font partie int&eacute;grante du mod&egrave;le asynchrone. Ils fonctionnent en boucle, indiquant &agrave; Node.js comment g&eacute;rer le flux de requ&ecirc;tes.&nbsp;<\/p><p class=\"wp-block-paragraph\">&Agrave; la r&eacute;ception d&rsquo;une nouvelle demande d&rsquo;un client, la boucle d&rsquo;&eacute;v&eacute;nements d&eacute;marre. Ensuite, Node.js transmet la demande au service externe appropri&eacute;, comme une API. Une fois que votre serveur re&ccedil;oit les donn&eacute;es, un nouvel &eacute;v&eacute;nement d&eacute;clenche une <strong>fonction de rappel<\/strong>.<\/p><p class=\"wp-block-paragraph\">Une fonction de rappel ex&eacute;cute une autre fonction lorsqu&rsquo;une condition sp&eacute;cifique ou une op&eacute;ration asynchrone est termin&eacute;e. Elle permet au serveur web de traiter les demandes et d&rsquo;envoyer les r&eacute;ponses au client.<\/p><p class=\"wp-block-paragraph\"><strong>Moteur JavaScript V8<\/strong><\/p><p class=\"wp-block-paragraph\">Au c&oelig;ur de Node.js se trouve le moteur JavaScript V8, qui analyse et ex&eacute;cute le langage de script. En d&rsquo;autres termes, il permet &agrave; votre serveur dorsal d&rsquo;ex&eacute;cuter du code JavaScript en dehors d&rsquo;un navigateur web.&nbsp;<\/p><p class=\"wp-block-paragraph\">&Agrave; l&rsquo;origine, Google a d&eacute;velopp&eacute; ce moteur pour Google Chrome. Plus tard, Node.js a adopt&eacute; cette technologie pour permettre &agrave; JavaScript de fonctionner de mani&egrave;re ind&eacute;pendante au-dessus de Node.js.&nbsp;<\/p><h2 class=\"wp-block-heading\" id=\"h-avantages-de-l-utilisation-de-node-js\">Avantages de l&rsquo;utilisation de Node.js<\/h2><p class=\"wp-block-paragraph\">Apr&egrave;s avoir compris le m&eacute;canisme de Node.js, voyons comment ce mod&egrave;le peut b&eacute;n&eacute;ficier au d&eacute;veloppement de vos applications web.<\/p><ul class=\"wp-block-list\">\n<li><strong>Vitesse. <\/strong>L&rsquo;architecture asynchrone de Node.js g&egrave;re plus efficacement les op&eacute;rations d&rsquo;E\/S multiples, ce qui se traduit par une application plus r&eacute;active. Elle permet &eacute;galement d&rsquo;ex&eacute;cuter des donn&eacute;es en temps r&eacute;el.&nbsp;<\/li>\n\n\n\n<li><strong>M&eacute;canisme de gestion des erreurs. <\/strong>Les <a href=\"https:\/\/nodejs.org\/api\/errors.html\" target=\"_blank\" rel=\"noopener\">objets d&rsquo;erreur<\/a> int&eacute;gr&eacute;s offrent aux utilisateurs une plus grande souplesse dans le traitement de nombreux probl&egrave;mes. Ils permettent aux d&eacute;veloppeurs d&rsquo;obtenir des informations plus d&eacute;taill&eacute;es sur l&rsquo;erreur pour un d&eacute;pannage et un traitement plus efficaces.&nbsp;<\/li>\n\n\n\n<li><strong>Efficacit&eacute; du d&eacute;veloppement. <\/strong>Node.js permet aux d&eacute;veloppeurs d&rsquo;utiliser JavaScript n&rsquo;importe o&ugrave; pour un d&eacute;veloppement complet. Il facilite le d&eacute;veloppement car le code fonctionne de mani&egrave;re transparente entre le back-end et le front-end.&nbsp;<\/li>\n\n\n\n<li><strong>Un &eacute;cosyst&egrave;me riche. <\/strong>Les utilisateurs peuvent installer divers modules via le gestionnaire de paquets Node (NPM) pour ajouter facilement de nouvelles fonctionnalit&eacute;s &agrave; leurs applications Node.js sans avoir &agrave; les &eacute;crire &agrave; partir de z&eacute;ro.<\/li>\n\n\n\n<li><strong>Flexibilit&eacute; et &eacute;volutivit&eacute;. <\/strong>Les d&eacute;veloppeurs peuvent utiliser Node.js avec d&rsquo;autres cadres et syst&egrave;mes d&rsquo;exploitation. Ils peuvent &eacute;galement faire &eacute;voluer le moteur d&rsquo;ex&eacute;cution en utilisant diff&eacute;rentes approches, comme l&rsquo;installation d&rsquo;un &eacute;quilibreur de charge ou la mise en place de <a href=\"https:\/\/microservices.io\/\" target=\"_blank\" rel=\"noopener\">microservices<\/a>.<\/li>\n\n\n\n<li><strong>Open source.<\/strong> Le code source de Node.js est accessible &agrave; tous les utilisateurs, et ses cr&eacute;ateurs pr&ocirc;nent la transparence, l&rsquo;innovation et la personnalisation. Ce moteur d&rsquo;ex&eacute;cution b&eacute;n&eacute;ficie &eacute;galement d&rsquo;un soutien important de la part de la communaut&eacute;.&nbsp;<\/li>\n<\/ul><h2 class=\"wp-block-heading\" id=\"h-ce-que-vous-pouvez-faire-avec-node-js\">Ce que vous pouvez faire avec Node.js<\/h2><p class=\"wp-block-paragraph\">Voici plusieurs cas d&rsquo;utilisation de Node.js qui peuvent b&eacute;n&eacute;ficier des op&eacute;rations d&rsquo;E\/S r&eacute;actives et de l&rsquo;architecture asynchrone du moteur d&rsquo;ex&eacute;cution :<\/p><ul class=\"wp-block-list\">\n<li><strong>Discussions en direct et diffusion en continu.<\/strong> Les plateformes de chat et de streaming impliquent un grand nombre d&rsquo;op&eacute;rations d&rsquo;E\/S, les utilisateurs envoyant et recevant des donn&eacute;es en temps r&eacute;el. Le traitement efficace de Node.js permet de minimiser les d&eacute;lais puisqu&rsquo;il peut traiter les demandes des clients simultan&eacute;ment.<\/li>\n\n\n\n<li><strong>Flux de donn&eacute;es.<\/strong> Node.js peut rapidement r&eacute;cup&eacute;rer et pousser des informations &agrave; partir de sources externes, ce qui le rend parfaitement adapt&eacute; aux flux de donn&eacute;es en temps r&eacute;el. Les applications de cette technologie comprennent la surveillance des march&eacute;s boursiers et des syst&egrave;mes.&nbsp;<\/li>\n\n\n\n<li><strong>Proxy de serveur. <\/strong>Un proxy de serveur est un interm&eacute;diaire entre les clients et le serveur h&ocirc;te, g&eacute;n&eacute;ralement utilis&eacute; pour l&rsquo;&eacute;quilibrage de la charge ou le filtrage du trafic. Node.js veille &agrave; ce que les requ&ecirc;tes des clients et les r&eacute;ponses du serveur se d&eacute;roulent sans heurts.&nbsp;<\/li>\n\n\n\n<li><strong>API RESTful.<\/strong> Node.js est couramment utilis&eacute; pour cr&eacute;er des API RESTful qui permettent aux applications d&rsquo;utiliser des services externes sur un r&eacute;seau.&nbsp;<\/li>\n\n\n\n<li><strong>Applications &agrave; page unique (SPA). <\/strong>Les SPA telles que Gmail et PayPal mettent &agrave; jour les donn&eacute;es du client en temps r&eacute;el sans rafra&icirc;chissement manuel. Node.js permet de transf&eacute;rer rapidement les donn&eacute;es du serveur h&ocirc;te.<\/li>\n<\/ul><h2 class=\"wp-block-heading\" id=\"h-node-js-vs-autres-technologies-back-end\">Node.js vs autres technologies back-end<\/h2><p class=\"wp-block-paragraph\">Outre Node.js, les d&eacute;veloppeurs utilisent une myriade de technologies pour d&eacute;velopper des applications dorsales. En voici quelques-unes, tr&egrave;s r&eacute;pandues, et leur comparaison avec le runtime JavaScrpt.<\/p><p class=\"wp-block-paragraph\"><strong><a href=\"https:\/\/dotnet.microsoft.com\/\" target=\"_blank\" rel=\"noopener\">.NET<\/a>&nbsp;<\/strong><\/p><p class=\"wp-block-paragraph\">.NET est un cadre d&rsquo;application web populaire pour les applications d&rsquo;entreprise &agrave; grande &eacute;chelle. Bien qu&rsquo;il s&rsquo;agisse d&rsquo;un produit Microsoft, cette technologie est compatible avec Linux et MacOS. Toutefois, de nombreux d&eacute;veloppeurs affirment qu&rsquo;elle est plus r&eacute;active lorsqu&rsquo;elle fonctionne sous Windows.<\/p><p class=\"wp-block-paragraph\">.NET prend en charge les langages de programmation orient&eacute;s objet tels que <strong>C++<\/strong>, <strong>C# <\/strong>et <strong>VB.<\/strong> Cette capacit&eacute; rend le cadre de travail adapt&eacute; aux d&eacute;veloppeurs qui veulent profiter de la flexibilit&eacute; et des fonctionnalit&eacute;s de ces langages.&nbsp;<\/p><p class=\"wp-block-paragraph\">Le cadre .NET adopte l&rsquo;approche multithread avec un mod&egrave;le de traitement asynchrone. Cette architecture convient si votre service implique principalement des t&acirc;ches complexes et gourmandes en ressources humaines.<\/p><p class=\"wp-block-paragraph\">Cependant, les applications .NET sont plus difficiles &agrave; d&eacute;velopper. Si vos services web impliquent de nombreux appels externes, il est plus efficace d&rsquo;utiliser Node.js pour construire le back-end.<\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/rubyonrails.org\/\" target=\"_blank\" rel=\"noopener\"><strong>Ruby on Rails<\/strong><\/a><\/p><p class=\"wp-block-paragraph\">Ruby on Rails est un cadre de d&eacute;veloppement web &eacute;crit dans le langage orient&eacute; objet Ruby. Il suit l&rsquo;approche mod&egrave;le-vue-contr&ocirc;leur (MVC), qui fournit une structure d&eacute;finie pour votre application.<\/p><p class=\"wp-block-paragraph\">Cette structure permet aux d&eacute;veloppeurs de construire efficacement un prototype d&rsquo;application fonctionnel et d&rsquo;inclure des fonctionnalit&eacute;s suppl&eacute;mentaires par la suite. Ruby on Rails est donc id&eacute;al pour les projets it&eacute;ratifs, dans lesquels les d&eacute;veloppeurs divisent un projet en t&acirc;ches plus petites.<\/p><p class=\"wp-block-paragraph\">Malgr&eacute; sa simplicit&eacute;, l&rsquo;approche MVC rend Ruby on Rails moins flexible que Node.js. En revanche, le moteur d&rsquo;ex&eacute;cution JavaScript vous permet de d&eacute;velopper une application sous forme de microservices, ce qui la rend tr&egrave;s modulaire et &eacute;volutive.<\/p><p class=\"wp-block-paragraph\">Ruby on Rails &eacute;tant multithread, il convient mieux &agrave; un syst&egrave;me dot&eacute; de plusieurs c&oelig;urs. Cependant, il ne fonctionne pas de mani&egrave;re asynchrone, ce qui risque de ralentir les performances de votre application si elle n&eacute;cessite de fr&eacute;quents appels d&rsquo;entr&eacute;es\/sorties.&nbsp;<\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.djangoproject.com\/\" target=\"_blank\" rel=\"noopener\"><strong>Django<\/strong><\/a><\/p><p class=\"wp-block-paragraph\">Django est un cadre de d&eacute;veloppement web pour Python, un langage de programmation tr&egrave;s polyvalent et flexible. Il est populaire pour la construction d&rsquo;applications ou de services qui traitent de grandes quantit&eacute;s de donn&eacute;es.&nbsp;<\/p><p class=\"wp-block-paragraph\">Contrairement &agrave; Node.js, qui est id&eacute;al pour construire des microservices, les d&eacute;veloppeurs utilisent g&eacute;n&eacute;ralement Django pour d&eacute;velopper une application monolithique. Dans ce mod&egrave;le, vous &eacute;crivez les services de votre programme dans une seule grande base de code.&nbsp;<\/p><p class=\"wp-block-paragraph\">Bien qu&rsquo;assez &eacute;volutives, les applications monolithiques de Django sont moins flexibles que les microservices. Cependant, le mod&egrave;le MVT (model-view-template) de ce cadre aide les d&eacute;veloppeurs &agrave; construire des services plus efficacement en utilisant des composants plus petits et r&eacute;utilisables.&nbsp;<\/p><p class=\"wp-block-paragraph\">Django utilise une architecture synchrone et multithread, ce qui le rend adapt&eacute; &agrave; une application monolithique gourmande en donn&eacute;es et &agrave; un syst&egrave;me dot&eacute; de plusieurs c&oelig;urs.<\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/laravel.com\/\" target=\"_blank\" rel=\"noopener\"><strong>Laravel<\/strong><\/a><\/p><p class=\"wp-block-paragraph\">Laravel propose diff&eacute;rents mod&egrave;les couramment utilis&eacute;s dans une application web, notamment l&rsquo;authentification, l&rsquo;autorisation et les notifications.&nbsp;<\/p><p class=\"wp-block-paragraph\">Les mod&egrave;les et la syntaxe simple de Laravel rendent le codage d&rsquo;une application web plus accessible, en particulier pour les d&eacute;butants. En outre, il suit l&rsquo;architecture MVC qui aide les d&eacute;veloppeurs &agrave; maintenir et &agrave; modifier rapidement la base de code.&nbsp;<\/p><p class=\"wp-block-paragraph\">Cependant, de nombreux utilisateurs signalent que Laravel offre des performances sous-optimales par rapport &agrave; d&rsquo;autres technologies d&rsquo;arri&egrave;re-plan. Cela signifie que vous devez affiner la configuration ou installer un logiciel suppl&eacute;mentaire comme <a href=\"https:\/\/laravel.com\/docs\/11.x\/octane\" target=\"_blank\" rel=\"noopener\">Octane<\/a> pour am&eacute;liorer sa vitesse.<\/p><p class=\"wp-block-paragraph\">Si votre application implique beaucoup de flux de donn&eacute;es en temps r&eacute;el et d&rsquo;op&eacute;rations d&rsquo;E\/S, Laravel n&rsquo;est peut-&ecirc;tre pas la solution id&eacute;ale car il utilise un m&eacute;canisme de blocage multithread.&nbsp;<\/p><p>\n\n\n        <div class=\"protip\">\n            <div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                    Conseil de pro                <\/p>\n            <\/div>\n            <p class=\"protip__content\">Lors du choix des technologies back-end, de nombreux d&eacute;veloppeurs recommandent de donner la priorit&eacute; &agrave; la familiarit&eacute; et aux exigences du projet. Bien que les frameworks aient des performances diff&eacute;rentes, vous pouvez n&eacute;gliger un impact significatif sur l'utilisation dans le monde r&eacute;el.<\/p>\n                    <\/div>\n        \n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-gestionnaire-de-paquets-node-npm\">Gestionnaire de paquets Node (NPM)<\/h2><p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.hostinger.com\/fr\/tutoriels\/quest-ce-que-npm-une-introduction-de-base-pour-les-debutants\/\">Node Package Manager (NPM)<\/a> est un outil permettant d&rsquo;installer des logiciels, tels que des modules ou des d&eacute;pendances, pour les applications JavaScript. Il contribue &agrave; am&eacute;liorer l&rsquo;efficacit&eacute; du d&eacute;veloppement de Node.js en permettant aux utilisateurs d&rsquo;acc&eacute;der &agrave; des composants suppl&eacute;mentaires &agrave; partir d&rsquo;un seul endroit.&nbsp;<\/p><p>\n\n\n<div class=\"announcement-block announcement-block--important\">\n            <span class=\"announcement-block__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                          d=\"M12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5C6.20101 1.5 1.5 6.20101 1.5 12C1.5 17.799 6.20101 22.5 12 22.5ZM13.637 7.65198C13.637 6.74791 12.9041 6.01501 12 6.01501C11.0959 6.01501 10.363 6.74791 10.363 7.65198C10.5335 9.53749 10.875 13.383 10.875 13.383C10.875 14.0043 11.3787 14.508 12 14.508C12.6213 14.508 13.125 14.0043 13.125 13.383V13.38L13.637 7.65198ZM11.9927 15.714C11.3714 15.714 10.8677 16.2177 10.8677 16.839C10.8677 17.4603 11.3714 17.964 11.9927 17.964H12.0073C12.6286 17.964 13.1323 17.4603 13.1323 16.839C13.1323 16.2177 12.6286 15.714 12.0073 15.714H11.9927Z\"\n                          fill=\"#FEA419\"\/>\n                <\/svg>\n                Important\n            <\/span>\n            <p class=\"announcement-block__content\">\n                <strong>Important !<\/strong> NPM peut d&eacute;signer soit l&rsquo;utilitaire que les d&eacute;veloppeurs utilisent pour t&eacute;l&eacute;charger les paquets, soit le r&eacute;f&eacute;rentiel dans lequel les utilisateurs partagent leurs modules.\n            <\/p><\/div>\n\n\n\n<\/p><p class=\"wp-block-paragraph\">Le d&eacute;p&ocirc;t NPM contient actuellement des millions de paquets et de modules, dont la tr&egrave;s populaire biblioth&egrave;que JavaScript <strong>Lodash<\/strong>. Vous pouvez &eacute;galement t&eacute;l&eacute;charger d&rsquo;autres frameworks &agrave; partir du d&eacute;p&ocirc;t, comme <strong>Express.js <\/strong>et <strong>Mocha.js<\/strong>.<\/p><p class=\"wp-block-paragraph\">Le t&eacute;l&eacute;chargement et la gestion des paquets &agrave; partir de NPM utilisent l&rsquo;interface de ligne de commande de votre syst&egrave;me. Par d&eacute;faut, cet utilitaire est automatiquement configur&eacute; apr&egrave;s l&rsquo;installation de Node.js, ce que nous allons expliquer dans la section suivante.<\/p><h2 class=\"wp-block-heading\" id=\"h-demarrer-avec-node-js\">D&eacute;marrer avec Node.js<\/h2><p class=\"wp-block-paragraph\">Maintenant que vous comprenez comment Node.js peut profiter &agrave; vos projets de d&eacute;veloppement web, plongeons dans les &eacute;tapes de sa mise en place. Pour ce tutoriel, nous allons montrer comment le faire sur un <a href=\"\/fr\/vps\">VPS Hostinger<\/a> fonctionnant sous <strong>Ubuntu 22.04<\/strong>.<\/p><h3 class=\"wp-block-heading\" id=\"h-installation-de-node-js\">Installation de Node.js<\/h3><p class=\"wp-block-paragraph\">Les utilisateurs de Hostinger VPS peuvent facilement installer Node.js sur Ubuntu sans commandes en utilisant le mod&egrave;le de syst&egrave;me d&rsquo;exploitation.&nbsp;<\/p><p class=\"wp-block-paragraph\">Apr&egrave;s avoir achet&eacute; le <a href=\"https:\/\/www.hostinger.com\/fr\/vps\/hebergement-nodejs\">plan d&rsquo;h&eacute;bergement VPS Node.js<\/a>, il vous suffit de compl&eacute;ter les t&acirc;ches d&rsquo;accueil et d&rsquo;attendre que le processus de configuration soit termin&eacute;. Cela devrait prendre quelques minutes et notre syst&egrave;me configurera automatiquement l&rsquo;environnement d&rsquo;ex&eacute;cution sur votre serveur.&nbsp;<\/p><p>\n\n\n        <div class=\"protip\">\n            <div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                    Choisir un autre plan VPS ?                <\/p>\n            <\/div>\n            <p class=\"protip__content\">Si vous avez d&eacute;j&agrave; un plan d'h&eacute;bergement VPS actif chez Hostinger, vous pouvez toujours installer Node.js sans commandes en utilisant le <a href=\"https:\/\/support.hostinger.com\/fr\/articles\/1583571-quels-sont-les-systemes-d-exploitation-disponibles-pour-les-vps\" target=\"_blank\" rel=\"noopener\">template de syst&egrave;me d'exploitation<\/a>.<\/p>\n                    <\/div>\n        \n\n\n\n<\/p><p class=\"wp-block-paragraph\">Pour les autres h&eacute;bergeurs, vous devez installer manuellement Node.js &agrave; l&rsquo;aide de commandes. Voici les &eacute;tapes &agrave; suivre pour ce faire :<\/p><ol class=\"wp-block-list\">\n<li>Connectez-vous &agrave; votre serveur en utilisant le client SSH PuTTY ou des outils de ligne de commande comme Terminal. Nous vous recommandons de le faire en tant que <strong>superutilisateur <\/strong>plut&ocirc;t qu&rsquo;en tant que<strong> root<\/strong>.<\/li>\n\n\n\n<li>Mettez &agrave; jour le package de votre syst&egrave;me en ex&eacute;cutant ces commandes une &agrave; une :<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">sudo apt update &amp;&amp; sudo apt upgrade<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>Maintenant, entrez ce qui suit pour installer Node.js :<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">sudo apt install nodejs -y&nbsp;<\/pre><ol start=\"4\" class=\"wp-block-list\">\n<li>Votre gestionnaire de paquets devrait &eacute;galement installer automatiquement NPM. Cependant, ex&eacute;cutez ce qui suit pour vous assurer que l&rsquo;outil est correctement configur&eacute; :<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">sudo apt install npm -y&nbsp;<\/pre><ol start=\"5\" class=\"wp-block-list\">\n<li>Confirmez l&rsquo;installation en interrogeant la version du n&oelig;ud &agrave; l&rsquo;aide de la commande suivante :<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">node -v<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a70ca1c8cf18\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a70ca1c8cf18\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"664\" height=\"58\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/terminal-returns-node-js-version.png\/public\" alt=\"Le terminal renvoie la version de Node.js\" class=\"wp-image-36272\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/terminal-returns-node-js-version.png\/w=664,fit=scale-down 664w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/terminal-returns-node-js-version.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/terminal-returns-node-js-version.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 664px) 100vw, 664px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">Lorsque vous d&eacute;veloppez une application Node.js localement, vous devez installer le runtime sur votre machine locale. La mani&egrave;re la plus simple de le faire est de <a href=\"https:\/\/nodejs.org\/fr\/download\/prebuilt-installer\" target=\"_blank\" rel=\"noopener\">t&eacute;l&eacute;charger l&rsquo;installateur pr&eacute;construit<\/a> bas&eacute; sur votre syst&egrave;me d&rsquo;exploitation &agrave; partir de la page de publication officielle.&nbsp;<\/p><figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.hostinger.com\/fr\/vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/public\" alt=\"\" class=\"wp-image-41471\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h3 class=\"wp-block-heading\" id=\"h-creer-et-executer-des-applications-avec-node-js\">Cr&eacute;er et ex&eacute;cuter des applications avec Node.js<\/h3><p class=\"wp-block-paragraph\">Les &eacute;tapes de la cr&eacute;ation d&rsquo;applications Node.js sont similaires &agrave; celles des autres d&eacute;veloppements web. Voici ce que vous devez faire :<\/p><ol class=\"wp-block-list\">\n<li>Installer <strong>Node.js<\/strong>, <strong>NPM<\/strong>, l&rsquo;&eacute;diteur de code <strong>VSCode <\/strong>et l&rsquo;<a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=ritwickdey.LiveServer\" target=\"_blank\" rel=\"noopener\">extension Live Server<\/a>.&nbsp;<\/li>\n\n\n\n<li>Cr&eacute;ez un dossier pour votre projet. Ouvrez <strong>VSCode<\/strong> &rarr; <strong>Fichier<\/strong> &rarr; <strong>Ouvrir un dossier <\/strong>et s&eacute;lectionnez votre nouveau r&eacute;pertoire.<\/li>\n\n\n\n<li>Naviguez vers votre <a href=\"https:\/\/code.visualstudio.com\/docs\/terminal\/getting-started\" target=\"_blank\" rel=\"noopener\">terminal VSCode<\/a> et ex&eacute;cutez la commande suivante pour cr&eacute;er un fichier de configuration pour votre projet :<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">npm init<\/pre><ol start=\"4\" class=\"wp-block-list\">\n<li>Saisissez les informations requises. Une fois termin&eacute;, vous devriez voir le <strong>fichier package.json <\/strong>dans la fen&ecirc;tre d&rsquo;exploration de VSCode.&nbsp;&nbsp;<\/li>\n\n\n\n<li>Dans l&rsquo;&eacute;cran principal, s&eacute;lectionnez <strong>Nouveau fichier <\/strong>et cr&eacute;ez un nouveau fichier de projet. Par exemple, nommez-le <strong>app.js<\/strong>.&nbsp;<\/li>\n\n\n\n<li>R&eacute;digez le code de votre application. Pour les tests, vous pouvez cr&eacute;er un simple programme <strong>Hello World. <\/strong>Appuyez sur <strong>Ctrl + S <\/strong>pour l&rsquo;enregistrer.&nbsp;<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a70ca1c91d37\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a70ca1c91d37\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"648\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/vscode-user-interface-during-node-js-app-development-1024x648-1.png\/public\" alt=\"Interface utilisateur VSCode pendant le d&eacute;veloppement de l'application Node.js \" class=\"wp-image-36273\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/vscode-user-interface-during-node-js-app-development-1024x648-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/vscode-user-interface-during-node-js-app-development-1024x648-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/vscode-user-interface-during-node-js-app-development-1024x648-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/vscode-user-interface-during-node-js-app-development-1024x648-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><ol start=\"7\" class=\"wp-block-list\">\n<li>Depuis votre terminal VSCode, lancez <strong>node <\/strong>suivi du nom de votre fichier JS pour d&eacute;marrer votre application :<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">node app.js<\/pre><p class=\"wp-block-paragraph\">C&rsquo;est fait ! Dans notre sc&eacute;nario, vous pouvez acc&eacute;der &agrave; l&rsquo;application en ajoutant l&rsquo;adresse <strong>localhost <\/strong>et le num&eacute;ro de port d&eacute;sign&eacute; &agrave; votre navigateur web.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a70ca1c950e1\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a70ca1c950e1\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"133\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/node-js-app-running-in-a-browser-1024x133-1.png\/public\" alt=\"Application Node.js fonctionnant dans un navigateur\" class=\"wp-image-36274\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/node-js-app-running-in-a-browser-1024x133-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/node-js-app-running-in-a-browser-1024x133-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/node-js-app-running-in-a-browser-1024x133-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2024\/11\/node-js-app-running-in-a-browser-1024x133-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">Les &eacute;tapes sont similaires quel que soit votre syst&egrave;me d&rsquo;exploitation.&nbsp;<\/p><p class=\"wp-block-paragraph\">Pour le d&eacute;ployer sur le site r&eacute;el, t&eacute;l&eacute;chargez le fichier du projet &agrave; l&rsquo;aide de commandes, de git ou du <a href=\"https:\/\/www.hostinger.com\/fr\/tutoriels\/sftp\/\">protocole de transfert de fichiers s&eacute;curis&eacute;<\/a> (SFTP).<\/p><p>\n\n\n        <div class=\"protip\">\n            <div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                    D&eacute;ployez facilement une application Node.js                <\/p>\n            <\/div>\n            <p class=\"protip__content\"> Pour d&eacute;ployer facilement une application Node.js, utilisez la <a href=\"https:\/\/www.hostinger.com\/fr\/hebergement-applications-web\">solution d'h&eacute;bergement d'applications web de Hostinger<\/a>. Elle s'int&egrave;gre &agrave; <strong>GitHub<\/strong> pour simplifier le processus de d&eacute;ploiement et offre une fonctionnalit&eacute; int&eacute;gr&eacute;e qui vous permet de t&eacute;l&eacute;verser vos fichiers de projet directement dans l'environnement d'h&eacute;bergement &agrave; partir de <strong>hPanel<\/strong>. <\/p>\n                    <\/div>\n        \n\n\n\n<\/p><h3 class=\"wp-block-heading\" id=\"h-travailler-avec-des-modules-et-des-dependances\">Travailler avec des modules et des d&eacute;pendances<\/h3><p class=\"wp-block-paragraph\">NPM vous permet de g&eacute;rer facilement les modules et les d&eacute;pendances afin d&rsquo;am&eacute;liorer les fonctionnalit&eacute;s de votre application Node.js.&nbsp;<\/p><p class=\"wp-block-paragraph\">Le fichier <strong>package.json <\/strong>dans le dossier de votre projet contient des informations sur les d&eacute;pendances de votre application. Au lieu de g&eacute;rer les paquets individuellement, vous pouvez appeler <strong>package.json <\/strong>en bloc.<\/p><p class=\"wp-block-paragraph\">Par exemple, la commande suivante met &agrave; jour toutes les d&eacute;pendances r&eacute;pertori&eacute;es dans le fichier :<\/p><pre class=\"wp-block-preformatted\">npm install<\/pre><p class=\"wp-block-paragraph\">Vous pouvez v&eacute;rifier la pr&eacute;sence de paquets obsol&egrave;tes et installer les mises &agrave; jour &agrave; l&rsquo;aide d&rsquo;une seule commande. Cette possibilit&eacute; rend le processus plus efficace et maintient la coh&eacute;rence entre les diff&eacute;rents environnements de projet.&nbsp;<\/p><p class=\"wp-block-paragraph\">De plus, Node.js vous permet de lister automatiquement les nouveaux modules ou d&eacute;pendances dans <strong>packages.json <\/strong>lors de l&rsquo;installation en utilisant l&rsquo;option <strong>&ndash;save.<\/strong> Cette commande se pr&eacute;sente comme suit :<\/p><pre class=\"wp-block-preformatted\">npm install software-name --save<\/pre><p class=\"wp-block-paragraph\">Node.js comprend des modules internes pr&eacute;configur&eacute;s lors de l&rsquo;installation de l&rsquo;environnement d&rsquo;ex&eacute;cution. Vous pouvez &eacute;galement installer des modules externes &agrave; partir du d&eacute;p&ocirc;t <strong>npm.&nbsp;<\/strong><\/p><p class=\"wp-block-paragraph\">Pour charger un module dans le code de votre application, utilisez la fonction <strong>require. <\/strong>Par exemple, l&rsquo;extrait suivant appelle <strong>express.js <\/strong>et l&rsquo;affecte &agrave; la variable <strong>express :<\/strong><\/p><pre class=\"wp-block-preformatted\">const express = require('express')<\/pre><p class=\"wp-block-paragraph\">Les modules int&eacute;gr&eacute;s varient en fonction de la version de Node.js. Pour v&eacute;rifier lesquels sont install&eacute;s sur votre syst&egrave;me actuel, utilisez la commande suivante :<\/p><pre class=\"wp-block-preformatted\">npm list -g<\/pre><p>\n\n\n        <div class=\"protip\">\n            <div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                    Besoin d&#039;aide avec JavaScript ?                <\/p>\n            <\/div>\n            <p class=\"protip__content\">Utilisez <strong>Kodee<\/strong>, l'assistant IA d'Hostinger pour vous aider &agrave; &eacute;crire du code JavaScript et &agrave; g&eacute;n&eacute;rer des commandes npm pour d&eacute;velopper votre application.<\/p>\n                    <\/div>\n        \n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-frameworks-et-bibliotheques-node-js\">Frameworks et biblioth&egrave;ques Node.js<\/h2><p class=\"wp-block-paragraph\">Dans la pratique, les d&eacute;veloppeurs ne s&rsquo;appuient pas uniquement sur Node.js pour cr&eacute;er une application. Ils int&egrave;grent un cadre pour cr&eacute;er la structure du projet et une biblioth&egrave;que pour ajouter facilement des fonctions. Voici quelques-unes des options les plus populaires.<\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/expressjs.com\/\" target=\"_blank\" rel=\"noopener\"><strong>Express.js<\/strong><\/a><\/p><p class=\"wp-block-paragraph\">Express.js ou Express est le framework Node.js le plus utilis&eacute;. Il est appr&eacute;ci&eacute; pour son mod&egrave;le minimaliste et non impos&eacute;, qui permet aux d&eacute;veloppeurs de structurer le code de leur application sans restriction.&nbsp;<\/p><p class=\"wp-block-paragraph\">Parmi les caract&eacute;ristiques notables de ce framework, on peut citer la gestion polyvalente et int&eacute;gr&eacute;e des requ&ecirc;tes. Il permet aux d&eacute;veloppeurs d&rsquo;appeler rapidement une fonction sp&eacute;cifique bas&eacute;e sur les m&eacute;thodes et les URL des requ&ecirc;tes HTTP. Sans Express, un tel m&eacute;canisme ne serait possible qu&rsquo;en utilisant un long code.&nbsp;<\/p><p class=\"wp-block-paragraph\">En outre, le cadre Express.js permet aux d&eacute;veloppeurs d&rsquo;utiliser des logiciels interm&eacute;diaires, c&rsquo;est-&agrave;-dire des logiciels qui modifient les demandes et les r&eacute;ponses pendant la transmission. Il permet par exemple d&rsquo;authentifier, d&rsquo;enregistrer ou de limiter les donn&eacute;es transf&eacute;r&eacute;es.&nbsp;<\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/react.dev\/\" target=\"_blank\" rel=\"noopener\"><strong>React.js<\/strong><\/a><\/p><p class=\"wp-block-paragraph\">React.js est une biblioth&egrave;que JavaScript front-end utilis&eacute;e pour d&eacute;velopper l&rsquo;interface utilisateur (UI) d&rsquo;un site ou d&rsquo;une application web. Bien que relativement r&eacute;cente, elle a gagn&eacute; une popularit&eacute; massive en raison de l&rsquo;importance qu&rsquo;elle accorde &agrave; la facilit&eacute; d&rsquo;utilisation et &agrave; la convivialit&eacute; pour les d&eacute;butants.&nbsp;<\/p><p class=\"wp-block-paragraph\">Comme d&rsquo;autres biblioth&egrave;ques, <a href=\"https:\/\/www.hostinger.com\/fr\/tutoriels\/quest-ce-que-react\/\">React<\/a> fournit un ensemble de composants r&eacute;utilisables qui aident les d&eacute;veloppeurs &agrave; construire sans effort une interface complexe. Ce qui la distingue, c&rsquo;est l&rsquo;utilisation de la syntaxe <strong>JSX<\/strong>, qui permet d&rsquo;&eacute;crire des balises de type HTML en JavaScript.&nbsp;<\/p><p class=\"wp-block-paragraph\">React permet d&rsquo;am&eacute;liorer la vitesse de chargement de votre site ou de votre application web en utilisant un mod&egrave;le d&rsquo;objet de document virtuel (DOM). Cette fonctionnalit&eacute; permet aux navigateurs web de ne rendre que les sections modifi&eacute;es de l&rsquo;interface utilisateur plut&ocirc;t que la page enti&egrave;re, ce qui rend le processus plus efficace.<\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/socket.io\/\" target=\"_blank\" rel=\"noopener\"><strong>Socket.io<\/strong><\/a><\/p><p class=\"wp-block-paragraph\">La biblioth&egrave;que JavaScript Socket.io offre des fonctionnalit&eacute;s permettant de g&eacute;rer la transmission de donn&eacute;es en temps r&eacute;el, ce qui en fait une alternative populaire pour le d&eacute;veloppement de services &agrave; forte intensit&eacute; d&rsquo;E\/S tels que les jeux, les plateformes de diffusion en direct et les applications de chat.&nbsp;<\/p><p class=\"wp-block-paragraph\">Socket.io permet &agrave; votre application Node.js de r&eacute;pondre aux clients sans attendre leurs requ&ecirc;tes. Dans les applications de messagerie, par exemple, cette fonctionnalit&eacute; permet aux membres d&rsquo;un groupe de recevoir automatiquement un message d&rsquo;un utilisateur.&nbsp;<\/p><p class=\"wp-block-paragraph\">Socket.io offre un moyen plus fiable et plus r&eacute;actif que les <strong>WebSockets <\/strong>traditionnels pour permettre une communication bidirectionnelle avec les clients. Sans cela, vous devriez d&eacute;velopper un code personnalis&eacute; pour g&eacute;rer la connexion bidirectionnelle et contourner manuellement les demandes des clients.<\/p><p class=\"wp-block-paragraph\"><a href=\"https:\/\/nextjs.org\/\" target=\"_blank\" rel=\"noopener\"><strong>Next.js<\/strong><\/a><\/p><p class=\"wp-block-paragraph\">Next.js est un cadre de d&eacute;veloppement web complet bas&eacute; sur React qui peut g&eacute;rer le front-end et le back-end. Il fournit des blocs de construction et des outils pour construire l&rsquo;interface utilisateur de votre application et les syst&egrave;mes c&ocirc;t&eacute; serveur.&nbsp;<\/p><p class=\"wp-block-paragraph\">Par exemple, la nouvelle version de Next dispose d&rsquo;un compilateur int&eacute;gr&eacute; qui am&eacute;liore consid&eacute;rablement le temps de rafra&icirc;chissement du code. Lorsque les d&eacute;veloppeurs adaptent l&rsquo;application, les changements se refl&egrave;tent plus rapidement dans le navigateur.&nbsp;&nbsp;<\/p><p class=\"wp-block-paragraph\">Next.js utilise &eacute;galement un m&eacute;canisme de pr&eacute;-rendu qui compile les applications JavaScript &agrave; la place du navigateur du client. Cela permet d&rsquo;am&eacute;liorer la vitesse de chargement des pages et l&rsquo;<a href=\"https:\/\/www.hostinger.com\/fr\/tutoriels\/quest-ce-que-le-seo-un-guide-complet\/\">optimisation des moteurs de recherche<\/a> (SEO).&nbsp;<\/p><h2 class=\"wp-block-heading\" id=\"h-sites-web-populaires-utilisant-node-js\">Sites web populaires utilisant Node.js<\/h2><p class=\"wp-block-paragraph\">Cette section explore plusieurs sites web remarquables construits sur Node.js afin de d&eacute;montrer ses capacit&eacute;s.&nbsp;<\/p><p class=\"wp-block-paragraph\"><strong>Netflix<\/strong><\/p><p class=\"wp-block-paragraph\">La capacit&eacute; de Node.js &agrave; g&eacute;rer des op&eacute;rations en temps r&eacute;el et &agrave; forte intensit&eacute; d&rsquo;E\/S en fait une technologie id&eacute;ale pour cr&eacute;er une application web de diffusion en direct comme Netflix.&nbsp;<\/p><p class=\"wp-block-paragraph\"><strong>Uber<\/strong><\/p><p class=\"wp-block-paragraph\">Uber utilise Node.js pour g&eacute;rer la communication en temps r&eacute;el entre les diff&eacute;rents clients et API.&nbsp;<\/p><p class=\"wp-block-paragraph\">Par exemple, son application traite des donn&eacute;es provenant de services cartographiques, des syst&egrave;mes de positionnement global des conducteurs et des demandes de commande des utilisateurs.<\/p><p class=\"wp-block-paragraph\"><strong>eBay<\/strong><\/p><p class=\"wp-block-paragraph\">Node.js permet aux plateformes de commerce &eacute;lectronique telles qu&rsquo;eBay de g&eacute;rer efficacement les appels d&rsquo;API provenant de services externes tels que les fournisseurs de services logistiques ou de paiement.&nbsp;<\/p><p class=\"wp-block-paragraph\">En outre, les d&eacute;veloppeurs peuvent mettre en &oelig;uvre s&eacute;par&eacute;ment des fonctions telles que la gestion des stocks et le chat en direct, et tirer parti de l&rsquo;efficacit&eacute; des op&eacute;rations d&rsquo;E\/S du moteur d&rsquo;ex&eacute;cution.&nbsp;<\/p><p class=\"wp-block-paragraph\"><strong>PayPal<\/strong><\/p><p class=\"wp-block-paragraph\">Les applications de passerelle de paiement comme PayPal fonctionnent avec d&rsquo;autres API et logiciels interm&eacute;diaires pour permettre des transactions s&eacute;curis&eacute;es et crypt&eacute;es.&nbsp;<\/p><p class=\"wp-block-paragraph\">Node.js permet le traitement de donn&eacute;es en temps r&eacute;el &agrave; partir de nombreuses sources, y compris des microservices, pour des t&acirc;ches telles que la d&eacute;tection des fraudes.&nbsp;<\/p><figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.hostinger.com\/fr\/vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/public\" alt=\"\" class=\"wp-image-41471\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/FR-VPS-hosting_in-text-banner-1024x300-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusion<\/h2><p class=\"wp-block-paragraph\">Node.js est un environnement d&rsquo;ex&eacute;cution qui vous permet d&rsquo;ex&eacute;cuter du code JavaScript sur le serveur pour le d&eacute;veloppement back-end. Il est construit sur le moteur V8 de Google, initialement pr&eacute;vu pour le navigateur web Chrome.<\/p><p class=\"wp-block-paragraph\">Node.js utilise une architecture asynchrone, non bloquante et ax&eacute;e sur les &eacute;v&eacute;nements. Ce moteur d&rsquo;ex&eacute;cution utilise un seul thread pour r&eacute;pondre &agrave; plusieurs requ&ecirc;tes simultan&eacute;es sans mise en file d&rsquo;attente, ce qui le rend adapt&eacute; aux applications &agrave; forte intensit&eacute; d&rsquo;entr&eacute;es\/sorties.&nbsp;<\/p><p class=\"wp-block-paragraph\">Le logiciel d&rsquo;ex&eacute;cution, y compris Node Package Manager (NPM), est pr&eacute;install&eacute; sur les plans d&rsquo;h&eacute;bergement Hostinger Node.js. Pour les autres fournisseurs, vous devrez probablement l&rsquo;installer manuellement &agrave; l&rsquo;aide de commandes ou de paquets binaires.<\/p><p class=\"wp-block-paragraph\">NPM vous permet d&rsquo;installer d&rsquo;autres frameworks et biblioth&egrave;ques pour compl&eacute;ter Node.js, comme React.js et Express.js. Ces technologies combin&eacute;es sont bien adapt&eacute;es aux applications d&rsquo;entreprise telles que PayPal, eBay et Uber.&nbsp;&nbsp;<\/p><h2 class=\"wp-block-heading\" id=\"h-qu-est-ce-que-node-js-faq\">Qu&rsquo;est-ce que Node.js &ndash; FAQ<\/h2><div class=\"schema-faq wp-block-yoast-faq-block\"><div class=\"schema-faq-section\" id=\"faq-question-1731692453794\"><h3 class=\"schema-faq-question\">Node.js est-il un langage de programmation ou un framework ?<\/h3> <p class=\"schema-faq-answer\">Node.js n&rsquo;est ni un langage de programmation ni un cadre. Il s&rsquo;agit d&rsquo;un environnement d&rsquo;ex&eacute;cution JavaScript multiplateforme qui permet au langage de script de s&rsquo;ex&eacute;cuter en tant que code c&ocirc;t&eacute; serveur.&nbsp;<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1731692469705\"><h3 class=\"schema-faq-question\">Puis-je utiliser Node.js pour le d&eacute;veloppement front-end ?<\/h3> <p class=\"schema-faq-answer\">Bien que vous ne puissiez pas utiliser directement Node.js pour le d&eacute;veloppement front-end, il apporte des r&ocirc;les suppl&eacute;mentaires. Par exemple, vous pouvez utiliser des modules NPM sur le front-end &agrave; l&rsquo;aide d&rsquo;outils tels que Browserify. Plusieurs biblioth&egrave;ques front-end comme React.js s&rsquo;appuient &eacute;galement sur l&rsquo;environnement d&rsquo;ex&eacute;cution.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1731692478495\"><h3 class=\"schema-faq-question\">Node.js est-il adapt&eacute; &agrave; la cr&eacute;ation d&rsquo;applications web &eacute;volutives ?<\/h3> <p class=\"schema-faq-answer\">Absolument ! Node.js vous permet de construire des applications &eacute;volutives sous forme de composants plus petits et isol&eacute;s, appel&eacute;s microservices. Il est ainsi plus facile de faire &eacute;voluer votre projet, car vous pouvez choisir d&rsquo;am&eacute;liorer certains services sans affecter les autres.<\/p> <\/div> <\/div>\n","protected":false},"excerpt":{"rendered":"<p>Node.js est un environnement d&rsquo;ex&eacute;cution open-source et multiplateforme qui vous permet d&rsquo;ex&eacute;cuter JavaScript c&ocirc;t&eacute; serveur. L&rsquo;architecture de ce logiciel permet des transferts de donn&eacute;es efficaces, ce qui en fait un choix populaire pour la construction d&rsquo;applications en temps r&eacute;el et &eacute;volutives.&nbsp; Ce tutoriel vous apprendra les bases de Node.js, notamment son fonctionnement et ses applications [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/fr\/tutoriels\/quest-ce-que-node-js\/\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":355,"featured_media":36245,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_title":"Qu'est-ce que Node.js ? Guide pour d\u00e9butants","rank_math_description":"Node.js est un moteur d'ex\u00e9cution JavaScript utilis\u00e9 pour cr\u00e9er des applications \u00e9volutives c\u00f4t\u00e9 serveur et en r\u00e9seau. En savoir plus ici !","rank_math_focus_keyword":"Qu'est-ce que Node.js","footnotes":""},"categories":[4760],"tags":[],"class_list":["post-36234","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-vps"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/tutorials\/what-is-node-js\/","default":1},{"locale":"pt-BR","link":"https:\/\/www.hostinger.com\/br\/tutoriais\/o-que-e-node-js\/","default":0},{"locale":"fr-FR","link":"https:\/\/www.hostinger.com\/fr\/tutoriels\/quest-ce-que-node-js\/","default":0},{"locale":"es-ES","link":"https:\/\/www.hostinger.com\/es\/tutoriales\/que-es-node-js\/","default":0},{"locale":"id-ID","link":"https:\/\/www.hostinger.com\/id\/tutorial\/node-js-adalah\/","default":0},{"locale":"ko-KR","link":"http:\/\/www.hostinger.com\/kr\/tutorials\/what-is-node-js\/","default":0},{"locale":"en-PH","link":"https:\/\/www.hostinger.com\/ph\/tutorials\/what-is-node-js\/","default":0},{"locale":"en-MY","link":"https:\/\/www.hostinger.com\/my\/tutorials\/what-is-node-js\/","default":0},{"locale":"en-GB","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/what-is-node-js\/","default":0},{"locale":"en-IN","link":"https:\/\/www.hostinger.com\/in\/tutorials\/what-is-node-js\/","default":0},{"locale":"en-CA","link":"https:\/\/www.hostinger.com\/ca\/tutorials\/what-is-node-js\/","default":0},{"locale":"en-AU","link":"https:\/\/www.hostinger.com\/au\/tutorials\/what-is-node-js\/","default":0},{"locale":"en-NG","link":"https:\/\/www.hostinger.com\/ng\/tutorials\/what-is-node-js\/","default":0},{"locale":"es-AR","link":"https:\/\/www.hostinger.com\/ar\/tutoriales\/que-es-node-js\/","default":0},{"locale":"es-MX","link":"https:\/\/www.hostinger.com\/mx\/tutoriales\/que-es-node-js\/","default":0},{"locale":"es-CO","link":"https:\/\/www.hostinger.com\/co\/tutoriales\/que-es-node-js\/","default":0},{"locale":"pt-PT","link":"https:\/\/www.hostinger.com\/pt\/tutoriais\/o-que-e-node-js\/","default":0}],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/36234","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/users\/355"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/comments?post=36234"}],"version-history":[{"count":15,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/36234\/revisions"}],"predecessor-version":[{"id":43642,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/36234\/revisions\/43642"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/media\/36245"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/media?parent=36234"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/categories?post=36234"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/tags?post=36234"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}