Logo preloader Xtension

Nest.js, czyli Angular i Spring na backendzie

Nest.js jest frameworkiem do pisania aplikacji webowych dla node.js. Konstrukcja kodu wzorowana jest na Angularze, czyli mamy tutaj przede wszystkim moduły i serwisy oraz wstrzykiwanie zależności. I co najważniejsze, aplikację tworzy się w języku TypeScript. Jeżeli masz pozytywne doświadczenia ze Springiem w Javie oraz lubisz mechanizm dependency injection, jaki proponuje Angular, to ten temat z pewnością Cię zainteresuje.
javascript
coding
nest.js
mohammad-rahmani-8OnkIkFBBtM-unsplash

Nest.js jest dla JavaScriptu tym, czym dla Javy jest Spring, czyli dostarcza mechanizmów do tworzenia kontrolerów. Korzysta wówczas z dekoratorów – dla oznaczenia metod obsługujących konkretne metody, czyli np. @Get, @Post itd., oraz dla oznaczenia samych kontrolerów poprzez dekorator @Controller() (parametrem tego dekoratora jest ścieżka do zasobu). Do klas usług, które będą wstrzykiwane, dodajemy z kolei dekorator @Injectable.

Mamy również do dyspozycji narzędzie do tworzenia inicjalnego projektu oraz jego poszczególnych składowych (moduł, kontroler, usługa i wiele innych).

Framework korzysta z dobrodziejstw innych bibliotek i frameworków. Pod maską znajdziemy domyślnie express js jako serwer http. Opcjonalnie można skorzystać z innego silnika –  architektura teoretycznie pozwala na podpięcie dowolnego serwera http.

Do autentykacji jest używany popularny framework passport js. W przypadku, gdy do tego celu używamy standardowej metody użytkownik/hasło, jego użycie sprowadza się do napisania usługi i zaimplementowania jednej metody.

W zestawie jest również klient bazy danych wraz z mapowaniem relacji na obiekty – tutaj jest wykorzystywana biblioteka typeorm. Jeżeli ktoś używa MongoDb, to na pokładzie znajdzie również Mongoose.

Framework integruje kilka innych bibliotek oraz dostarcza mechanizmów do realizacji wielu różnych scenariuszy (jak np. mikroserwisy lub graphql). Jest bardzo dobrze udokumentowany. Na oficjalnej stronie z dokumentacją przedstawiony jest szczegółowo każdy aspekt tej biblioteki wraz z przykładami. Próg wejścia jest bardzo niski, zwłaszcza jeżeli masz już doświadczenie z technologiami wspomnianymi na samym początku.

Sądzę, że jest to bardzo udany projekt, który kompleksowo podchodzi do tworzenia backendu korzystając przy tym z wielu sprawdzonych rozwiązań. O jego popularności i dojrzałości niech świadczy to, że na githubie w momencie pisania tych słów projekt ma 23 tysiące gwiazdek. Jeżeli rozważasz tworzenie aplikacji webowej na platformie node.js, to jest to bardzo dobry punkt startu.

Data publikacji: 24 czerwca 2020
Autor: Michał Gierwatowski
Przeczytaj kolejne artykuły
certum
Mobile
Certum
Security
Unikatowa Usługa Zaufanej Strony Trzeciej
viktor-forgacs-iMBBagKV6tc-unsplash
Mobile
Certum
Security
Xtension po godzinach. Parowanie czarnych dziur
Biometria a bezpieczeństwo mobilne
Mobile
Certum
Security
Odręczny podpis elektroniczny na Samsung Knox Meetup
Stwórzmy razem wyjątkowy projekt
Napisz do nas

Xtension Sp z o.o.

ul. Opacka 12

80-338 Gdańsk

 

+48 58 351 39 66

biuro@xtension.pl

 

LinkedIn