Krótki przewodnik po Node.js w 2019 r

Wprowadzenie

Co to jest Node.js?

Node.js jest zarówno open source, jak i darmowy, i jest wykorzystywany do różnych celów. Aby wymienić tylko kilka, Node.js jest bardzo wydajny do obsługi treści dynamicznych. Jeśli chcesz szybko i sprawnie uruchomić blog, Node.js może uprościć ten proces. Oparty na JavaScript skrypt Node.js może być używany przez większość programistów stron internetowych, którzy chcą wykonywać operacje po stronie serwera bez konieczności uczenia się zupełnie nowego języka. Node.js jest również bardzo wydajny pod względem pamięci, obsługuje wszystkie żądania asynchronicznie, a dołączony menedżer pakietów ma dostęp do największego repozytorium na świecie.

Zalety

Node.js ma kilka zalet, takich jak:

  • Natywnie obsługuje zadania asynchroniczne. Na przykład, gdy użytkownik wysyła żądanie do skryptu napisanego w Node.js, Node.js jest nadal dostępny dla nowych żądań podczas przetwarzania bieżącego żądania.
  • Obsługuje większość dystrybucji Linuksa i udostępnia dużą liczbę gotowych pakietów do użycia.
  • Posiada większość podstawowych funkcji, które będą Ci potrzebne. Obejmuje to możliwość edycji, przenoszenia lub usuwania plików; a także wchodzić w interakcje z MySQL, MongoDB i mnóstwem innych rzeczy bez konieczności korzystania z dołączonego menedżera pakietów.
  • Wykorzystuje największą repozytorium pakietów na świecie: npm.
  • Podobna składnia kodu do JavaScript. Node.js to zasadniczo JS po stronie serwera.

Niedogodności

Niestety, Node.js ma swoją wadę:

  • Ponieważ jest to stosunkowo nowy język, w porównaniu do czegoś takiego jak PHP, jego baza kodów jest często aktualizowana. Oznacza to, że wywołania lub metody, których używasz, mogą nie działać w poprzedniej lub przyszłej wersji Node.js.
  • Node.js może czasami zająć więcej czasu na napisanie kodu, ponieważ nie może łatwo używać innych bibliotek. ImageMagick, na przykład, jest popularną biblioteką używaną w PHP, która nie jest obsługiwana przez Node.js.
  • W przeciwieństwie do Java wyjątki są trudne do wdrożenia. Oznacza to, że prawie niemożliwe jest znalezienie błędów w kodzie, jeśli masz plik JS o długości tysięcy linii.

Korzystanie z Node.js

Wymagania wstępne

  • Każda zainstalowana nowoczesna wersja Ubuntu, CentOS lub Debian. Ten artykuł dotyczy wyłącznie procesu instalacji CentOS.
  • Co najmniej 256 MB pamięci RAM. Uwaga: liczba ta zależy od uruchomionej aplikacji.
  • Do tego samouczka potrzebujesz również edytora tekstu, takiego jak Vim lub Nano.

Instalowanie węzła

Zaktualizuj menedżera pakietów:

yum update -y

Zainstaluj Node.js:

yum install nodejs -y

Jeśli pojawi się monit o zaimportowanie klucza, wprowadź, Yaby kontynuować.

Upewnij się, że instalacja się powiodła:

node -v
npm -v

Podstawowe konwencje typów plików

Wszystkie pliki Node.js muszą kończyć się .js. Na przykład można nazwać prosty solver kwadratowy Quadratic.js. Powiedziawszy to, możesz nazwać to, jak chcesz, o ile pierwszy warunek jest spełniony.

API

Języki programowania zwykle mają APIdostępne, a Node.js nie jest wyjątkiem. Jeśli jesteś zgubiony lub potrzeba znalezienia składni funkcji (lub metody), sprawdzić dokumenty node.js .

UWAGA: Jak wspomniano wcześniej, Node.js ma bazę kodu, która jest stale aktualizowana i dlatego funkcje tutaj mogą nie działać w późniejszych wersjach.

Tworzenie pierwszych programów

Witaj świecie!

W tej sekcji poznamy najbardziej podstawowy program, jaki możesz stworzyć. Aby rozpocząć, przejdź do /~lub /root. Utworzenie pierwszego projektu jest tak proste, jak utworzenie pliku JS:

nano HelloWorld.js

Gdy znajdziesz się w ulubionym edytorze tekstu, wprowadź następujące dane:

// For reference, comments are made using '//' added before or after a line. Comments are ignored by the Node.js interpreter.
console.log("Hello, world!"); // console.log() simply outputs text to the terminal.

Wyjdź i zapisz.

Teraz uruchom swój program:

node HelloWorld.js

Zobaczysz następujące dane wyjściowe:

[root@test-server ~]# node HelloWorld.js
Hello, world!

Prosta matematyka i zmienne

W tej sekcji nauczymy się, jak wykonywać podstawowe operacje matematyczne. Aby rozpocząć, /rootponownie przejdź do katalogu i utwórz plik o nazwie MathTest.js:

nano MathTest.js 

Wklej następujący kod do pliku:

var a = 5; // Variables are declared using 'var variableName = value'. The value can be a string, integer, boolean value (ie. true/false) or an object. 
var b = 10;
var c = "Hello, world!";

console.log(c); // This line will output the contents of variable c.
console.log("a = " + a + ", b = " + b); // This line prints out the respective values for a & b.
console.log("a + b = " + (a + b)); // This line prints out the result of (a + b) or (5 + 10). The result should be 15.

Zapisz i wyjdź.

Po uruchomieniu MathTest.jsprogramu zobaczysz następujące informacje:

[root@test-server ~]# node MathTest.js
Hello, world!
a = 5, b = 10
a + b = 15

Uruchamianie naszego pierwszego serwera WWW

W tej sekcji nauczymy się, jak uruchomić serwer WWW Node.js. Aby rozpocząć, utwórz plik o nazwie WebTest.js:

nano WebTest.js

Wklej następujący kod:

 // This line includes the HTTP module. Having it included allows us to use it's methods and functions to start a working webserver.
var http = require("http");
var a = 5, b = 10; 

http.createServer(function (request, response) {
    // This will simply output "Request received!" to your terminal when you visit your page.
    console.log("Request received!");

    // This line tells your browser that it should be expecting HTML content to be returned.
    response.writeHead(200, {'Content-Type': 'text/html'}); 

    // The following line adds "Hello, world! a + b = 15" to the body. The <i></i> tags will italicize the text. 
    response.write("<i>Hello, world! a + b = " + (a + b) + "</i>"); 

    // Finally, we'll tell the browser that we're done sending data with 'response.end()' below.
    response.end(); 
}).listen(8080);

Po zapisaniu pliku uruchom nowy program:

[root@test-server ~]# node WebTest.js

Teraz odwiedź http://(YOUR_SERVER_IP):8080. Upewnij się, że zapora sieciowa jest poprawnie skonfigurowana, aby zezwolić na żądanie.

W przeglądarce zobaczysz Request received!następujące informacje:

Hello, world! a + b = 15

UWAGA: Aby zamknąć (zamknąć) WebTest.js, użyj następującej kombinacji klawiszy: CTRL+ C.

Teraz, gdy rozumiesz niektóre z podstaw, w poniższej sekcji zapoznasz się z obsługą modułów innych firm, instalowanych za pośrednictwem npm.

Instalowanie modułu innej firmy i używanie go w programie

W tej sekcji będziemy rozszerzać nasze pierwsze „Witaj, świecie!” program. Na początek będziemy instalować pakiet o nazwie colo . Ten pakiet pozwala nam używać kolorów na terminalu.

Na początek użyjemy npmdo zainstalowania pakietu:

npm i colo  

W celach informacyjnych możesz usunąć pakiet za pomocą npm remove colo

Po zakończeniu procesu będziesz mieć dostęp do colopakietu. Teraz po otwarciu HelloWorld.jsdodaj następujący wiersz u góry:

var colour = require("colo");

Gdzie widzisz console.log(...), zapisz „Witaj, świecie!” ze wspornikami. Na początku nawiasów dodaj colour.red.bold:

console.log(colour.red.bold("Hello, world!"));

Twój końcowy kod będzie wyglądał następująco:

var colour = require("colo");
console.log(colour.red.bold("Hello, world!"));

Zapisz, zamknij i uruchom program. Wyjście będzie dokładnie takie samo jak poprzednio, z wyjątkiem „Witaj, świecie!” będzie teraz czerwony (i pogrubiony) w twoim terminalu.

Uwagi końcowe

Gratulujemy ukończenia wszystkich podstawowych programów. Powinno to zapewnić wiedzę niezbędną do interpretacji (przynajmniej większości) kodu używanego w innych samouczkach. Mamy nadzieję, że nie poprzestaniesz na tym - istnieje wiele innych rzeczy, które możesz zrobić w Node.js!

Jeśli okaże się, że Node.js nie jest dla Ciebie językiem, usunięcie go jest tak proste, jak:

yum remove nodejs -y


Leave a Comment

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.