Na wstępie, muszę przyznać, że pisanie serwera w JavaScript’cie było dla nie dość „szalone”. Tym bardziej, że JavaScript zawsze był dla mnie bardziej slangiem niż językiem programowania. Po czasie pracy nad serwerem node.js deko zmieniłem zdanie na temat samego JS’a i zwracam mu należny honor. Samo rozwiązanie napisania serwera w tymże języku okazało się dość ciekawą przygodą, która myślę nie skończy się tylko na przygodzie. O samym node.js nie będę się rozpisywać, bo jest tego w sieci już na tyle dużo, że nie ma to większego sensu, dla zaciekawionych tematem odsyłam do storn:
- http://nodejs.org/
- http://www.nodebeginner.org/
- https://github.com/joyent/node
- http://dailyjs.com/2010/11/01/node-tutorial/
Przygotowanie środowiska
Wszyscy posiadający systemy *NIX (linux, BSD, OSX) mają dość ułatwione zadanie, użytkowników Windows odsyłam do bloga (nie wiem czy opisywana metoda działa, nie sprawdzałem). Osobiście uważam, że Windows nie jest dobrą platformą dla webDevelopera, szczególnie teraz gdy do głosu zaczynają dochodzić nowe rozwiązania, typy baz danych i technologie – ale mnie mnie to oceniać. Sam używam OSX oraz Linuxa, więc opiszę jak u mnie to wyglądało:
curl http://npmjs.org/install.sh | sh
npm to bardzo przyjemny manager pakietów dla node.js’a, dzięki niemu zainstalujemy moduły potrzebne do każdego projektu.
Nasz hello-world
Jakby nie inaczej. Na początek, dokonałem wyboru frameworka opracowanego na potrzeby node.js’a ułatwiającego pisanie aplikacji www o nazwie express, aby go zainstalować najpierw tworzymy katalog z projektem:
cd node-helloworld
npm install express
express został przeze mnie wybrany głównie z powodu popularności i prostoty, samych frameworków jest dużo więcej, pewnie zachce przetestować inne, ale na razie express zupełnie mi wystarcza.
Teraz cała magia na początek, czyli hello-world. W ulubionym edytorze tworzymy sobie plik np. app.js lub jak tam sobie chcemy, a w nim:
Prawda, że proste? Programowanie serwera za pomocą node.js’a to naprawdę czysta przyjemność – ale deko trzeba jednak się przetoczyć po dokumentacji oraz kreatywnie rozwiązywać problemy, bo wielu jeszcze nie ma opisanych – nowości tak mają, ale nie ma co się przerażać. Po prostu siadać i pisać serwery.
Nasz serwer odpalamy za pomocą polecenia: