David Hockley

Nest JS (vs Next JS) : Angular vs React sur le serveur

Avez-vous envie de construire des applications serveur qui soient solides, fiables et évolutives, et basées sur TypeScript ? J'ai une recommandation pour vous : Nest JS. Nous allons explorer sa philosophie sous-jacente, ses avantages et ses inconvénients, et voir si cela vaut la peine de l'apprendre.

Cela peut vous surprendre dans une discussion sur le développement côté serveur, mais je vous promets que c'est pertinent : pour comprendre NestJs, il faut comprendre les différences entre React et Angular.

J'en ai déjà parlé longuement : React apporte flexibilité et liberté, tandis qu'Angular apporte stabilité et fiabilité. Le côté client est guidé par l’UX, l’expérience utilisateur, il est donc logique que les développeurs frontaux soient attirés par la liberté et l'agilité qu'offre React.

Mais qu'en est-il du côté serveur ? Quel est le meilleur paradigme à appliquer ? C'est l'occasion rêvée de parler de...

Qu'est-ce que Nest JS ? Et pourquoi cela vaut-il la peine de l'apprendre ?

Parce que voyez-vous, je ne vois pas de façon plus appropriée d'expliquer ce qu'est NestJS que de dire : c'est un framework côté serveur inspiré d'Angular.

NestJS est un framework Typescript pour construire des applications côté serveur efficaces et évolutives. Et l'inspiration Angular est visible partout. Dans la manière dont les choses sont organisées, dans la manière de coder, dans la manière d'injecter des dépendances. Dans le choix de Typescript comme langage de base. Si (comme moi) vous êtes familier avec Angular, vous vous sentirez chez vous avec NestJS.

Qu'est-ce que cela implique ?

Si le développement front-end est axé sur l'expérience utilisateur, le développement back-end est axé sur les données et la logique. Et c'est là que la structure d'Angular prend tout son sens. Sur le serveur, ce n'est pas la flexibilité que l'on recherche, mais la sécurité. Le fait qu'Angular ait une opinion bien arrêtée est la principale force de Nest JS.

Plongeons dans ses fonctionnalités.

Les fonctionnalités de NestJS

NestJS a une architecture modulaire qui aide à organiser votre code. Comme Angular, vous structurez votre code en modules indépendants qui contiennent des composants. Vous pouvez définir des "pipes" qui vous permettent de modifier les données. Et (évidemment) Nest a des contrôleurs.

Pour chacun d'entre eux, Nest JS suit les traces d'Angular en utilisant des décorateurs pour définir les différents comportements.

Comme Angular, NestJS fournit des fonctionnalités étendues dès le départ : scheduling de tâches, files d'attente, logs, cookies et validation, pour n'en citer que quelques-unes...

Bref, tout ce que vous attendez d'un framework backend à part entière. Il dispose même d'un support intégré pour les WebSockets, ce qui vous permet de mettre en place vos propres chats en temps réel ou des jeux multi-joueurs.

De plus, Nest JS supporte les API REST et GraphQL, ce qui vous permet de choisir celle qui correspond le mieux à vos besoins.

Les forces et les faiblesses de Nest JS

Mais comment NestJS se positionne-t-il par rapport à d'autres alternatives ? Comparé à d'autres frameworks Node.js comme Express.js ou Koa.js, NestJS a plus de fonctionnalités, et impose une certaine façon de faire, et est plus robuste.

Et on a vraiment l'impression de revoir la comparaison entre React et Angular une fois de plus : Comme React, Express et Koa sont minimalistes et nécessitent des bibliothèques supplémentaires pour les fonctionnalités. Comme Angular, NestJS fournit une solution complète, réduisant la nécessité de rechercher des bibliothèques externes.

Les similitudes de Nest avec Angular constituent un atout supplémentaire : si vous connaissez l'un, vous vous sentirez à l'aise avec l'autre.

Ceci étant dit, les forces de NestJS sont aussi ses défauts. Comme NestJS a des opinions bien arrêtées sur comment il faut faire les choses, il y a plus à apprendre que dans des frameworks plus simples. Et Nest JS est peut être trop riche en fonctionnalités pour des petits projets.

Mais si vous voulez ou devez apprendre Nest JS, je vous recommande de lire les principes d'Angular, et de faire le tutoriel Tour of Heroes.

Pourquoi apprendre NestJS ?

Alors, pourquoi devriez-vous, en tant que développeur, apprendre NestJS ? Dans un sens, la courbe d'apprentissage raide que j'ai mentionnée est précisément la raison pour laquelle NestJS vaut la peine d'être appris.

Parce que ce que vous apprenez, ce n'est pas une syntaxe spécifique. Vous apprenez les meilleures pratiques du développement back-end, intégrées dans un framework. Cela vaut la peine de les apprendre... même si vous développez plus tard avec un framework ou un langage différent.

Ou, pour formuler les choses différemment : Lorsque vous investissez du temps pour apprendre Nest JS, vous investissez en fait du temps pour vous-même.

Social
Made by kodaps · All rights reserved.
© 2023