Samouczek Node.js dla początkujących: naucz się krok po kroku w 3 dni

Wprowadzenie do Node.js

Nowoczesne aplikacje internetowe naprawdę przeszły długą drogę przez lata wraz z wprowadzeniem wielu popularnych frameworków, takich jak bootstrap, Angular JS itp. Wszystkie te frameworki są oparte na popularnym JavaScenariusz Ramy.

Kiedy jednak przyszło do tworzenia aplikacji serwerowych, pojawiła się pewna pustka i tu pojawił się Node.js.

Node.js jest również oparty na JavaFramework skryptowy, ale jest używany do tworzenia aplikacji opartych na serwerze. Podczas przechodzenia przez cały samouczek przyjrzymy się szczegółowo Node.js i temu, jak możemy go używać do tworzenia aplikacji opartych na serwerze.

Program nauczania Node.js

Podstawy Node.js dla początkujących

👍 Lessna 1 Pobierz i zainstaluj Node.js — Jak pobrać i zainstalować Node.js i NPM w systemie Windows
👍 Lessna 2 Samouczek NPM Node.js — Twórz, publikuj, rozszerzaj i zarządzaj
👍 Lessna 3 Utwórz serwer WWW HTTP w Node.js — Samouczek z przykładem kodu

Zaawansowane rzeczy związane z Node.js!

👍 Lessna 1 Samouczek dotyczący frameworka Node.js Express — Naucz się w 10 minut
👍 Lessna 2 node.js MongoDB Poradnik — Kompletny przewodnik z przykładami
👍 Lessna 3 Samouczek dotyczący obietnicy Node.js — Kompletny przewodnik po JavaObietnice scenariusza
👍 Lessna 4 Poradnik Bluebird Promises — Kompletny przewodnik po obietnicach Bluebird
👍 Lessna 5 node.js Generators — Co to jest Callbacks vs. Node.js Generators
👍 Lessna 6 Samouczek dotyczący strumieniowania węzła js — Strumień plików, Potoki
👍 Lessna 7 Samouczek testowania jednostkowego Node.js z użyciem Jasmine — Kompletny przewodnik
👍 Lessna 8 Samouczek GraphQL — Co to jest GraphQL? Ucz się na przykładzie

Znać różnicę!

👍 Lessna 1 GraphQL kontra REST - Co za różnica?
👍 Lessna 2 Node.Js kontra AngularJS - Znać różnicę
👍 Lessna 3 Kontra Node.js Python - Co za różnica?

Pytania do rozmowy kwalifikacyjnej i samouczek w formacie PDF dotyczący Node.js

👍 Lessna 1 Pytania do rozmowy kwalifikacyjnej dotyczące Node.js — 25 najważniejszych pytań i odpowiedzi podczas rozmów kwalifikacyjnych dotyczących Node.js
👍 Lessna 2 Samouczek dotyczący Node.js w formacie PDF — Pobierz samouczek Node.js w formacie PDF dla początkujących

Co to jest Node.js?

Node.js to wieloplatformowe środowisko wykonawcze o otwartym kodzie źródłowym, używane do tworzenia aplikacji internetowych po stronie serwera. Aplikacje Node.js są napisane JavaSkrypt można uruchomić w wielu systemach operacyjnych.

Node.js opiera się na architekturze opartej na zdarzeniach i nieblokującym interfejsie API wejścia/wyjścia, który ma na celu optymalizację przepustowości i skalowalności aplikacji w przypadku aplikacji internetowych działających w czasie rzeczywistym.

Przez długi czas wszystkie platformy dostępne do tworzenia stron internetowych opierały się na modelu bezstanowym. Model bezstanowy ma miejsce, gdy dane wygenerowane w jednej sesji (takie jak informacje o ustawieniach użytkownika i zdarzeniach, które miały miejsce) nie są zachowywane do wykorzystania w następnej sesji z tym użytkownikiem.

Trzeba było wykonać wiele pracy, aby utrzymać informacje o sesji pomiędzy żądaniami użytkownika. Ale dzięki Node.js w końcu istnieje sposób, aby aplikacje internetowe miały dwukierunkowe połączenia w czasie rzeczywistym, w których zarówno klient, jak i serwer mogą inicjować komunikację, umożliwiając im swobodną wymianę danych.

Dlaczego warto używać Node.js?

W nadchodzących rozdziałach przyjrzymy się prawdziwej wartości Node.js, ale co sprawia, że ​​ten framework jest tak sławny. Przez lata większość aplikacji opierała się na bezstanowym frameworku żądanie-odpowiedź. W tego typu aplikacjach zadaniem programisty jest zapewnienie, że został wprowadzony odpowiedni kod zapewniający utrzymanie stanu sesji internetowej podczas pracy użytkownika z systemem.

Ale dzięki aplikacjom internetowym Node.js możesz teraz pracować w czasie rzeczywistym i mieć dwustronną komunikację. Stan jest utrzymywany i klient lub serwer może rozpocząć komunikację.

Funkcje Node.js

Przyjrzyjmy się niektórym kluczowym funkcjom Node.js

  1. Asynchroniczne IO sterowane zdarzeniami wspomaga współbieżną obsługę żądań – to prawdopodobnie najważniejszy argument sprzedaży Node.js. Ta funkcja zasadniczo oznacza, że ​​jeśli Node otrzyma żądanie dotyczące jakiejś operacji wejścia/wyjścia, wykona operację w tle i będzie kontynuował przetwarzanie innych żądań.
    Różni się to znacznie od innych języków programowania. Prosty przykład podano w poniższym kodzie
var fs = require('fs'); 
          fs.readFile("Sample.txt",function(error,data)
          {
                console.log("Reading Data completed");
     });
  • Powyższy fragment kodu dotyczy odczytu pliku o nazwie Sample.txt. W innych językach programowania następna linia przetwarzania nastąpi dopiero po odczytaniu całego pliku.
  • Jednak w przypadku Node.js ważną częścią kodu, którą należy zauważyć, jest deklaracja funkcji („funkcja (błąd, dane)”). Nazywa się to funkcją wywołania zwrotnego.
  • Więc to, co się tutaj dzieje, to to, że operacja odczytu pliku rozpocznie się w tle. A inne przetwarzanie może odbywać się jednocześnie, gdy plik jest odczytywany. Po zakończeniu operacji odczytu pliku ta anonimowa funkcja zostanie wywołana, a tekst „Reading Data completed” zostanie zapisany w dzienniku konsoli.
  1. Węzeł korzysta z wersji V8 JavaSilnik środowiska wykonawczego skryptów, z którego korzysta Google Chrome. Węzeł ma opakowanie nad JavaSilnik skryptów, który znacznie przyspiesza działanie silnika wykonawczego, dzięki czemu przetwarzanie żądań w Node także staje się szybsze.
  2. Obsługa współbieżnych żądań – Kolejną kluczową funkcjonalnością Node jest możliwość obsługi współbieżnych połączeń przy bardzo minimalnym obciążeniu pojedynczego procesu.
  3. Biblioteka Node.js wykorzystuje JavaSkrypt – To kolejny ważny aspekt rozwoju w Node.js. Znaczna część społeczności programistów jest już dobrze zorientowana w języku JavaScript, a zatem rozwój w Node.js staje się łatwiejszy dla programisty znającego JavaScript.
  4. Istnieje aktywna i pełna życia społeczność dla struktury Node.js. Ze względu na aktywną społeczność, zawsze są udostępniane kluczowe aktualizacje dla struktury. Pomaga to utrzymać strukturę zawsze na bieżąco z najnowszymi trendami w rozwoju sieci.

Kto korzysta z Node.js

Node.js jest używany przez wiele dużych firm. Poniżej znajduje się lista kilku z nich.

  • Paypal – wiele witryn w ramach Paypal również rozpoczęło przejście na Node.js.
  • LinkedIn – LinkedIn używa Node.js do zasilania swoich Aplikacje mobilne Serwery, które zasilają iPhone'a, Androidi mobilne produkty internetowe.
  • Mozilla wdrożyła Node.js w celu obsługi interfejsów API przeglądarek. Platforma ta została zainstalowana już pół miliarda razy.
  • eBay obsługuje swoją usługę HTTP API w Node.js

Kiedy używać Node.js

Node.js najlepiej sprawdza się w zastosowaniach związanych z przesyłaniem strumieniowym lub aplikacjami czasu rzeczywistego opartymi na zdarzeniach, np

  1. Aplikacje do czatu
  2. Serwery gier – szybkie i wydajne serwery, które muszą przetwarzać tysiące żądań jednocześnie, więc jest to idealna platforma.
  3. Dobre dla środowiska współpracy — jest to dobre dla środowisk zarządzających dokumentami. W środowisku zarządzania dokumentami wiele osób publikuje swoje dokumenty i wprowadza ciągłe zmiany, wyewidencjonowując i ewidencjonując dokumenty. Zatem Node.js jest dobry dla tych środowisk, ponieważ pętla zdarzeń w Node.js może zostać uruchomiona za każdym razem, gdy dokumenty zostaną zmienione w środowisku zarządzanym dokumentami.
  4. Serwery reklamowe – tutaj znowu możesz mieć tysiące żądań ściągnięcia reklam z serwera centralnego, a Node.js może być idealną platformą do obsługi tego.
  5. Serwery strumieniowe – Innym idealnym scenariuszem wykorzystania Node są serwery strumieniowego przesyłania multimediów, w których klienci mają żądania pobrania różnych treści multimedialnych z tego serwera.

Node.js jest dobry, gdy potrzebujesz wysokiego poziomu współbieżności, ale mniejszej ilości dedykowanego czasu procesora.

A co najlepsze, ponieważ Node.js jest zbudowany na javascript, najlepiej nadaje się do tworzenia aplikacji po stronie klienta opartych na tym samym frameworku javascript.

Kiedy nie używać Node.js

Node.js może być używany do wielu aplikacji o różnych celach. Jedynym scenariuszem, w którym nie należy go stosować, jest długi czas przetwarzania, wymagany przez aplikację.

Węzeł ma strukturę jednowątkową. Jeśli aplikacja musi przeprowadzić w tle długotrwałe obliczenia, nie będzie w stanie przetworzyć żadnych innych żądań. Jak omówiono powyżej, Node.js najlepiej sprawdza się tam, gdzie przetwarzanie wymaga mniej dedykowanego czasu procesora.