0% ont trouvé ce document utile (0 vote)
16 vues32 pages

Introduction à NestJS et ses fonctionnalités

Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
16 vues32 pages

Introduction à NestJS et ses fonctionnalités

Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

NestJS

INTRODUCTION
● Framework [Link] Applications backend
● Créé en 2017 par Kamil Myśliwiec
● Basé sur [Link] (HTTP)
● Objectif: une bonne architecture
● Supporte TS et JS
● S’inspire d’autres frameworks (e.g. Spring:
OOP /Decorateurs, Angular: ID / modularité /
providers / middleware) CLI
TABLE OF CONTENTS

01 03
Installation Demo

02 04
Structure Avantages et
incovénients
01
Installation
$ npm i -g @nestjs/cli
$ nest new project-name
$ npm i -g @nestjs/cli
$ nest new project-name
$ npm i -g @nestjs/cli
$ nest new project-name
02
Structure
Controllers
Controlleur
● But : recevoir des requêtes spécifiques pour
l'application.

● Le mécanisme de routage : contrôle quel


contrôleur reçoit quelles requêtes.

● Classes et des décorateurs

● Les décorateurs permettent à Nest de lier les


requêtes aux contrôleurs correspondants
Controllers
Providers
Providers
● Les contrôleurs doivent gérer les requêtes HTTP
et déléguer des tâches plus complexes aux
providers

● Décorateur : @Injectable pour déclarer un


provider

● Contient des fonctions réutilisables dans toute


l’application

● Exemple : services, repositories (BDD), helpers…


Providers: Exemple (service)
Controller avec Providers
Modules
Modules
● Diviser l’application
● Chaque application a au moins un module racine
(root)
● + des modules features potentiels
● Contrôleurs
● Providers...etc
Feature Module
Module racine (root)
Structure
Middleware
Middleware
● Intercepter les requêtes

● Appelée avant le gestionnaire de route

● Accès aux objets de requête et de réponse et la


fonction middleware next() dans le cycle requête-
réponse de l'application
Exception filters

• Gérer les erreurs et


les messages
d’erreurs.
Pipes

• Transformer les
données d'entrée dans
la forme souhaitée

• Evaluer les données


d'entrée
Guards

• Authentifications

• Autorisations
DEMO
___
Avantages

Incovenients
Avantages
● Puissant mais adapté
● Syntaxe de style Angular
(backend)
● Typescript (gérer les erreurs)
● Structure modulaire
● Documentation approfondie
● Bonne architecture et
développement rapide
Inconvénients
● Très verbeux
● Lisibilité du code
● Dependences
circulaire
● Trop générique pour
les microservices
Conclusion
MERCI!

CREDITS: This presentation template was


created by Slidesgo, incluiding icons by Flaticon,
and infographics & images by Freepik.
REFERENCES
• [Link]
architectural-pattern-controllers-providers-and-
modules-406d9b192a3a
• [Link]
• [Link]
architecture-4epf
• [Link]

Vous aimerez peut-être aussi