Bevezetés a NestJS-be [+6 Learning Resources]

A NestJS egy progresszív Node.js keretrendszer méretezhető, hatékony és megbízható szerveroldali alkalmazások létrehozásához.

A NestJS-t a rendezetlen kódbázisok kiküszöbölésére fejlesztették ki. Moduláris felépítése megkönnyíti a kód különböző modulokba rendezését.

A NestJS Typescriptre épül, és ExpressJS-t használ a motorháztető alatt. A NestJS-t szeretik a fejlesztők, akik szeretnék kihasználni a TypeScript típusellenőrző képességét. A NestJS egyesíti a funkcionális reaktív programozás (FRP), az objektumorientált programozás (OOP) és a funkcionális programozás (FP) különböző aspektusait.

Miért a NestJS?

A NestJS kezdőbarát, mivel jó felépítése és könnyen használható parancssori interfész (CLI) eszközei vannak. A fejlesztők így egyetlen paranccsal új szolgáltatást hozhatnak létre a Node.js keretrendszer használata közben.

A NestJS biztosítja a modult, a szolgáltatást, a vezérlőt és a tesztelési csomagot az induláshoz. A fejlesztési útja megkönnyítése érdekében a rendelkezésre álló számos sablonra és sablonra támaszkodhat.

A NestJS tanulási görbéje könnyű lesz azoknak, akik a JavaScript és az Angular ciklusokban, szintaxisban és feltételekben ismerkednek.

A NestJS jellemzői

Typescriptre épült

A NestJS a Typescriptre, a JavaScript felső indexére épül. A Typescript jobb fejlesztési élményt biztosít, mivel nem kell manuálisan ellenőriznie a hibákat minden alkalommal, amikor valamit módosít a kódban. A Typescript alapvetően a JavaScript összes funkcióját kínálja, de néhány további funkciót is tartalmaz.

Dependency Injekciós tartály

A függőségi injekció elválasztja az osztály által használt objektumok inicializálását magától az osztálytól. Ilyen esetben az osztályt „kliensnek”, míg az osztályfüggőségeket „szolgáltatásoknak” nevezzük. Ez a beépített DI a NestJS-ben hatékonyabbá és modulárisabbá teszi az alkalmazásokat.

Erőteljes parancssori interfész (CLI)

A NestCLI használatával inicializálhatja, fejlesztheti és karbantarthatja az összes NestJS-alkalmazást. A Nest CLI használatával sok mindent megtehet, például;

  • A projekt állványozása
  • A projekt kiszolgálása fejlesztési módban
  • Építsd fel és csomagold össze az alkalmazást a termelési terjesztéshez
  Hogyan lehet információkat kinyerni az MKV-kból Linuxon

Modularizálás

Minden NestJS-alkalmazásnak van legalább egy modulja. A „root” modul a legalapvetőbb. Egy tipikus NestJS-alkalmazásban az alkalmazás minden logikai része ugyanabban a tartományhatárban (modulban) fog élni. Egy ilyen beállítás megkönnyíti az olyan összetevők rendszerezését, ahol egy alkalmazás több modullal rendelkezik szorosan kapcsolódó képességekkel.

Egységteszt

Az automatizált tesztelés rengeteg előnnyel jár. Az ilyen tesztek beállításának folyamata azonban sokkal többet jelenthet. A NestJS különféle funkciókkal segíti a csapatokat a tesztek elkészítésében és automatizálásában. A NestJS-ben az a jó, hogy különféle tesztelőeszközökkel használható. A Nest függő befecskendező rendszer a tesztelés során elérhetővé válik, hogy könnyen kijátsszák az alkatrészeket.

Adatbázis agonisztikus

Könnyedén integrálható bármilyen SQL- vagy NoSQL-adatbázissal az Ön igényei és preferenciái alapján, amikor a NestJS-sel dolgozik. A NestJS adatbázishoz való csatlakoztatása nagyon egyszerű, mivel csak egy megfelelő Node.js illesztőprogramot kell betöltenie.

Különféle könyvtárak támogatása

A NestJS különféle eszközökkel kompatibilis, ami felgyorsítja az alkalmazásfejlesztést. Ez a keretrendszer támogatja a naplózást, az érvényesítést, a gyorsítótárazást, a WebSockets-et, a TypeORM-et, a Mongoose-t és a GraphQL-t extra konfiguráció nélkül.

A NestJS felépítése és munkafolyamata

A NestJS 3 rétegű architektúrával rendelkezik, amely vezérlőkből, szolgáltatókból és modulokból áll. A fejlesztők így tiszta kódot hozhatnak létre, amely nem fedi át egymást.

Kép forrása: jobb programozás

Vezérlők

A NestJS vezérlői hídként szolgálnak az ügyfelek kérelmei és válaszai között. Az útválasztási mechanizmus mindig egy megfelelő vezérlőhöz irányítja a kérést, amikor HTTP-kérés érkezik. A keretrendszer dekorátorokat és osztályokat használ a vezérlők létrehozásához. Ezután minden osztálymetódus leképeződik az útvonalakra egy adott kérés fogadásához.

Szolgáltatók

A szolgáltatók a NestJS alapjaiként írhatók le. A szolgáltatók függőségekként kerülnek beillesztésre, és kapcsolatokat hoznak létre a különböző objektumok között. A NestJS osztályai, például segédprogramok, szolgáltatások vagy adattárak, szolgáltatóként kezelhetők, miután hozzáadta az „@Injectable()” díszítőelemet. Az ilyen szolgáltatók a konstruktoron keresztül is beilleszthetők egy osztályba, és a NestJS feloldja a függőségeket.

Modulok

A NestJS egyik modulja a képességek szorosan összefüggő halmazát egyesíti. Minden NestJS-alkalmazás rendelkezik egy gyökérmodullal, amelyet belépési pontként használnak. Több modul használata erősen ajánlott, ha rendezett és könnyen olvasható kódot szeretne. A Nest „@Module()” dekorátora meghatároz egy modult, és olyan információkat is biztosít, mint a függőségek, vezérlők és szolgáltatók a modulhoz.

  8 legjobb ACT-felkészítő tanfolyam a pontszámok javítására

A NestJS használatának megkezdése

Győződjön meg arról, hogy a Node.js és az npm telepítve van. Futókörnyezetre van szükség, és a Node.js tökéletes ehhez a beállításhoz. 12-es verzióra van szüksége, kivéve a v13-at. Ezekkel a parancsokkal ellenőrizheti, hogy telepítve van-e a Node.js és az npm;

node -v
npm -v

Ha mindkettő telepítve van, akkor ehhez közeli kimenetet kap

Ha nem rendelkezik velük, telepítse őket a hivatalos oldalról. Szerencsére a Node.js és az npm együtt van telepítve.

  • Telepítse a Nest CLI-t. Használja a következő parancsokat a CLI és a projekt beállításához;
npm i -g @nestjs/cli
nest new project-name

A projekt nevét bemutató célból mynestapp-nak választjuk. A NestJS lehetőséget ad a Typescript vagy a Vanilla JavaScript használatára. Válassza ki a megfelelőt, és nyomja meg az Enter billentyűt. Miután az alkalmazás állványra került, a fájlszerkezet be lesz állítva, és az ‘src’ mappa több alapvető fájlt tartalmaz, amint az ezen a képernyőképen látható.

  • Futtassa az alkalmazást / az első hello világot

A telepítés befejezése után futtassa ezeket a parancsokat a fejlesztői kiszolgáló futtatásához

cd mynestapp
npm run start

Írja be böngészőjében a http://localhost:3000/ címet, és meg kell jelennie az első „Hello World” NestJ-n.

NestJS: Előnyök

  • Könnyű megtanulni. Könnyű elsajátítani a NestJS-t, különösen akkor, ha Ön az Angular-tól származik, vagy ha általánosan ismeri a JavaScriptet. A részletes dokumentáció megkönnyíti az ezzel a hatékony keretrendszerrel való munka elsajátítását is.
  • Rugalmas. A NestJS segítségével sok mindent létrehozhat. Ezzel a Node.js keretrendszerrel MVC-alkalmazásokat, GraphQL-alkalmazásokat, RESTful API-kat és websocketeket hozhat létre.
  • Több ezer modullal érkezik. A közösség által támogatott modulok megkönnyítik a fejlesztők számára a különböző funkciók felépítését, miközben szerveroldali alkalmazásokat hoznak létre.
  • Gyors fejlesztés és jó építészet. Ha a NestJS-sel dolgozik, nem kell mindent a semmiből létrehoznia. Ugyanazon keretrendszer azonban szilárd architektúrával rendelkezik, amely megkönnyíti a kód megértését.

NestJS: Hátrányok

  • Nem kedvező a TypeScript és Angular háttérrel rendelkezők számára. A NestJS sokat kölcsönöz az Angular architektúrából, és az ilyen ismeretekkel nem rendelkezőknek időbe telhet a szintaxis és a szerkezet megértése.
  • Egyes területeken hiányzik. A NestJS még fiatal, és előfordulhat, hogy nem versenyez kedvezően néhány Python és GO alapú keretrendszerrel.
  Hogyan találhatja meg, mely alkalmazások lassítják az iPhone működését

NestJS-t használó vállalatok

#1. Adidas

Az Adidas cipőgyártó és -tervező a NestJS-t használó cégek közé tartozik. A NestJS elképesztő tulajdonságai biztosan vonzották ezt a cipőóriást, hogy használja a háttérben.

#2. Capgemini

A Capgemini egy francia multinacionális vállalat, amely tanácsadást, technológiát, outsourcing-ot és professzionális szolgáltatásokat kínál. Ez a cég a NestJS-t használja a technológiai csomagjában.

#3. Roche

A Roche egy multinacionális egészségügyi vállalat, amely két részleggel rendelkezik; gyógyszerészet és diagnosztika. A Roche a NestJS-t használja fő webhelyén az egyik technológiai csomagként.

Tanulási források

#1. NestJS Zero to Hero

A NestJS Zero to Hero megtanítja a fejlesztőknek, hogyan hozhatnak létre és telepíthetnek vállalati háttéralkalmazásokat Typescript és Node.js használatával. A kurzus többek között megtanítja az API-k létrehozását, az engedélyezést és hitelesítést, az egységtesztelő Nest alkalmazásokat és a TypeORM-et az adatbázis-interakcióhoz.

#2. NestJS: A teljes fejlesztői útmutató

Ez a tanfolyam megtanítja a fejlesztőknek, hogyan hozhatnak létre háttér API-kat Nest, TypeScript és TypeORM használatával. Ez a teljes útmutató mindent tartalmaz, amire szüksége van a NestJS-alkalmazás kódolásának beállításától, tesztelésétől és telepítésétől kezdve. A NestJS webes keretrendszer kulisszái mögött is megismerkedhet.

#3. Mester NestJS

A Mester NestJS megtanítja, hogyan lehet vállalati szintű Node.js-alkalmazásokat fejleszteni TypeScript használatával. A kurzus számos egyéb dolog mellett megtanítja az érvényesítést és az adatok szerializálását, a JWT tokenek működését, a NestCLI használatát és a modern adatbázis-absztrakciót.

#4. NestJ-k a gyakorlatban (MongoDB-vel)

A NestJS in Practice mindent megtanít, amire szüksége van a NestJS-ről való tanuláshoz, a moduloktól, vezérlőktől, GuardsServices-től, Pipes-től és Middleware-től. A kurzus projektalapú megközelítést alkalmaz, ahol Ön kódolja és tárolja a kódot a GitHubon, letölthető zip fájlokkal minden szakaszhoz.

#5. Nest.js: Progresszív Node.js-keretrendszer

Ez a könyv bemutatja a fejlesztőknek a NestJS-t, valamint a JavaScript és a TypeScript kihasználását. A könyv olyan útmutató formátumban készült, amely biztosítja, hogy gyorsan beállíthassa és futtathassa NestJS alkalmazását.

#6. Praktikus Nest.js: Tiszta MVC webalkalmazások fejlesztése

A praktikus Nest.js könyv projektalapú megközelítést alkalmaz egy online áruház-alkalmazás létrehozásához, amely különféle NestJS-funkciókat használ. A könyv rövid beszélgetéseket, tippeket és hasznos kifejezéseket tartalmaz a NestJS alkalmazás létrehozásakor.

Következtetés

Amellett, hogy egy hatékony Node.js keretrendszer, a NestJS ma a szerveroldali alkalmazások egyik legnépszerűbb Typescript-keretrendszere is. Az a tény, hogy bevált kódolási gyakorlatokat és szabványos fejlesztési architektúrát kínál, sok mérnököt vonzott, akik az üzleti logika felépítésére szeretnének összpontosítani alkalmazások építése során.