Как стать автором
Обновить

Server-side JS (v8+Node)

Время на прочтение2 мин
Количество просмотров12K
Недавно видел на хабре спор по поводу того, что нам не нужны никакие скриптовые языки, кроме javascript. Утверждение, конечно, спорное, но меня заинтересовала возможность применения javascript на сервере.

Поиски привели меня сюда. Из всех представленных там решений, я почему-то (просто оно с первого раза встало и заработало) выбрал библиотеку Node для google v8.

Установка достаточно проста: сначала устанавливаем v8. Его либо можно скачать отсюда, либо, если у вас ubuntu (у меня 9.04, не знаю, что там с другими версиями и дистрибутивами), то можно установить libv8 из репозиториев. Сам Node берем здесь.

Все установилось, теперь можем поиграться! (я убил на эти играния половину выходного, но об этом позже). Http-cервер (просто говорящий всем привет) на Node выглядит вот так:

var utils = ("/utils.js");
var http = ("/http.js");
http.createServer(function (request, response) {
response.sendHeader(200, {"Content-Type": "text/plain"});
response.sendBody("Hello!\n");
response.finish();
}).listen(8000);
utils.puts("Server running at 127.0.0.1:8000/");

Кроме этого, в Node есть много очень полезных функций и объектов для работы с файлами, процессами, удобного подключения модулей и др. И на Node уже успели написать несколько библиотек, список тут.

Единственное огорчение, которое меня ждало — это почти полное отсутствие документации как по v8 (именно по встроенным объектам, что странно, возможно я плохо искал, если найдете, то поделитесь ссылкой, пожалуйста), так и по Node (там она как бы есть, но устаревшая). Благо, ситуацию немного прояснили тесты и исходники.

Да. Я тут сказал, что убил на играния с этим всем добром половину выходного. Так вот, результат всего этого — небольшой веб-фреймворк simplex и тестовое приложение. Пока там есть роуты, шаблонизатор и система контроллеров. Он очень простой, поэтому вполне сойдет для первого знакомства с Node.

Собственно, все. Ссылки по теме:
Теги:
Хабы:
Всего голосов 42: ↑39 и ↓3+36
Комментарии82

Публикации

Истории

Работа

Ближайшие события

Конференция «Я.Железо»
Дата18 мая
Время14:00 – 23:59
Место
МоскваОнлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург