2 lutego 2012 – Autor: Lee Jacobson

Wprowadzenie

To jest pierwsza część z serii poradników, które chcę napisać na temat Node.js. Powinienem wyraźnie zaznaczyć, że nie jestem ekspertem w dziedzinie Node.js, ale dobrym sposobem na sprawdzenie czy coś rozumiesz jest próba wytłumaczenia tego komuś innemu. Jeśli widzisz coś, co uważasz za nie do końca poprawne, proszę daj mi znać, abym mógł poprawić błąd, upewnię się, że dam ci kredyt.
Postanowiłem nauczyć się Node.js niedawno ze względu na jego rosnącą popularność. Branża programistyczna rozwija się niesamowicie szybko i niebezpiecznie jest pozostawać w tyle. Nauka nowych języków jest ważna, ponieważ jeśli tego nie zrobisz, prawdopodobnie zostaniesz w tyle i stracisz pracę. Pomyśl o tych wszystkich programistach flash, którzy nie mogą już znaleźć żadnej pracy.
Więc zacznijmy od odrobiny informacji (blegh!).
Node.js jest wersją JavaScript po stronie serwera. Oznacza to, że wszystkie fajne rzeczy związane z JavaScriptem mają tutaj zastosowanie. Oznacza to również, że jeśli jesteś już dość zaznajomiony z JavaScriptem, będziesz miał miłą przewagę. Node.js ma zaledwie kilka lat, a to oznacza, że nawet ludzie, którzy pracują z nim od samego początku, używają go dopiero od kilku lat. Porównaj to z tym, jak długo niektórzy ludzie piszą w C. Będąc tak nowym językiem, oznacza to również, że nie ma wielu ludzi, którzy go znają, a to oznacza, że zgodnie z prostą zasadą podaży i popytu twoje umiejętności są warte więcej niż przeciętny programista PHP.

Tworzenie Hello World

Stwórzmy hello world. Najpierw udaj się na stronę http://www.nodejs.org i pobierz node.js. Kiedy jest zainstalowany i gotowy, utwórz nowy plik JavaScript o następującej treści:

console.log(„Hello World”);

Teraz zapisz plik, nazwij go czymś w rodzaju „hello.js” i uruchom go następującym poleceniem:

node hello.js

W ten sposób powinieneś otrzymać „Hello World” w swoim terminalu. To wszystko jest dobre, ale jestem pewien, że ważniejsze jest to, że chcesz wiedzieć, jak wydrukować 'Hello World’ dla nowych połączeń HTTP.
Otwórz z powrotem swój edytor tekstu i wpisz:
Teraz zapisz swój plik i uruchom go za pomocą:

node hello.js

Powinieneś zobaczyć 'Serwer uruchomiony’ w terminalu. Świetnie! Teraz otwórz swoją przeglądarkę internetową i przejdź do 'http://localhost:8080′ powinieneś zobaczyć wiadomość 'Hello World’.
Przyjrzyjrzyjmy się bliżej naszemu kodowi.
Pierwsza linia to po prostu pobranie modułu http i zapisanie go do zmiennej 'http’. Moduł http jest dołączony do Node.js, aby ułatwić nam tworzenie aplikacji Node.js.

Możemy następnie użyć modułu http do stworzenia naszego serwera http poprzez wywołanie jego funkcji 'createServer’. Funkcja ta zwraca obiekt i przyjmuje funkcję jako parametr.
Wywołujemy funkcję 'listen’ na naszym nowym obiekcie serwera, która przyjmuje wartość liczbową, która mówi naszemu serwerowi, na jakim porcie ma nasłuchiwać. W naszym przypadku używamy portu 8080, dlatego też podłączyliśmy naszą przeglądarkę do http://localhost:8080
Tworzymy również funkcję i używamy jej jako parametru dla funkcji 'createServer’. Jest to dość standardowa rzecz do zrobienia w JavaScript, ponieważ funkcje mogą być parametrami tak samo jak zmienne i obiekty. To co się stanie, to za każdym razem, gdy nasz serwer otrzyma nowe połączenie na porcie 8080, uruchomi naszą funkcję, którą mu przekazaliśmy. Co ciekawe funkcja, którą przekazujemy do serwera nazywa się funkcją anonimową, a nazywa się tak ponieważ nie nadajemy jej nazwy.
Mogłeś zauważyć, że nasza anonimowa funkcja pobiera dwa parametry, 'request’ i 'response’. Parametry te są przekazywane do naszej anonimowej funkcji przez serwer HTTP, gdy otrzymuje on nowe połączenie. Oba są obiektami, których możemy użyć w naszej odpowiedzi na przychodzące żądanie.
Zauważyłeś, że pierwszą rzeczą, którą robimy, jest wywołanie funkcji 'writeHead’, która pozwala nam ustawić status HTTP jako pierwszy parametr i wysłać kilka nagłówków odpowiedzi jako drugi parametr. Ustawiamy kod statusu 200, który mówi naszej przeglądarce internetowej, że wszystko jest w porządku, a także przekazujemy jej nagłówek 'Content-Type’, który pozwala przeglądarce wiedzieć, co wysyłamy. W naszym przypadku jest to po prostu zwykły tekst.
Następnie używamy obiektu odpowiedzi do napisania naszego 'Hello World’. Robimy to po prostu wywołując jego funkcję write i przekazując mu nasz tekst. W tym momencie kończymy z naszą odpowiedzią, więc mówimy obiektowi response wywołując jego funkcję 'end’.

Uczynienie naszej odpowiedzi bardziej interesującą

Hello world jest dość nudne, więc zróbmy coś bardziej rozrywkowego. Możemy stworzyć licznik użytkowników bardzo łatwo w Node.js i nie musimy nawet używać bazy danych, tak jak moglibyśmy to zrobić w PHP.
Utwórz nowy plik JavaScript o nazwie, 'counter.js’ i wpisz następujące polecenie:
Teraz uruchommy go za pomocą polecenia,

node counter.js

Gdy przejdziesz w przeglądarce do 'http://localhost:8080′, powinieneś teraz zobaczyć licznik wyświetleń.
Uwaga: Możesz zobaczyć, że licznik wzrasta o dwa przy każdym żądaniu, to dlatego, że twoja przeglądarka żąda favicon z serwera (http://localhost:8080/favicon.ico).
Powinieneś także zobaczyć, że Node.js rejestruje każde żądanie, które otrzymuje do konsoli.
Główną rzeczą, którą tutaj robimy, jest ustawienie zmiennej 'userCount’ i inkrementacja przy każdym żądaniu. Następnie zapisujemy 'userCount’ w tekście odpowiedzi.
W PHP, aby zrobić to samo, musiałbyś zapisać informacje do czegoś takiego jak plik tekstowy lub baza danych.

Tutorial ten jest również dostępny w języku chińskim: http://www.laonan.net/blog/63/
Dzięki laonan za tłumaczenie

Jeśli podobał Ci się ten tutorial sprawdź część 2, Node.js dla początkujących – Callbacks

Autor

Witaj, jestem Lee.
Jestem programistą z Wielkiej Brytanii, który kocha technologię i biznes. Tutaj znajdziesz artykuły i tutoriale o rzeczach, które mnie interesują. Jeśli chcesz mnie zatrudnić lub dowiedzieć się więcej o mnie, odwiedź moją stronę o mnie

Linki społecznościowe

Tagi

.