
- •О проекте
- •Статус
- •Целевая аудитория
- •Структура учебника
- •JavaScript и Node.js
- •JavaScript и Вы
- •Предупреждение
- •Server-side JavaScript
- •«Hello world»
- •Что должно делать наше приложение
- •Задачи
- •Реализация приложения
- •Простой HTTP-сервер
- •Анализ нашего HTTP-сервера
- •Передача функций в качестве параметра
- •Событийно-ориентированные обратные вызовы
- •Как наш сервер обрабатывает запросы
- •Выбор места для нашего серверного модуля
- •Что необходимо для «роутера»?
- •Исполнение королевских постановлений в царстве глаголов
- •Роутинг реальных обработчиков запроса
- •Создание ответа обработчиков запроса
- •Как делать не надо
- •Блокирование и не блокирование
- •Ответ обработчиков запроса с неблокирующими операциями.
- •Сделаем что-нибудь полезное
- •Обработка POST-запросов
- •Обработка загрузки файлов
- •Выводы и перспективы
Node.js для начинающих
Автор: Manuel Kiessling
Перевод: Artod
О проекте
Цель данного документа помочь вам начать разработку приложений на Node.js и научить всему, что необходимо знать о «продвинутом» JavaScript. Это больше, чем обычный «Hello world»-туториал.
Статус
Вы читаете финальную версию этой книги, в обновлениях исправляются только ошибки или отражаются изменения в новых версиях Node.js. Последнее обновление 12 Февраля 2012.
Код примеров этой книги тестировался на Node.js версии 0.6.10.
Целевая аудитория
Вероятно, документ будет полезен читателям с базовыми знаниями примерно как у меня: опыт работы хотя бы с одним объектно-ориентированным языком, таким как Ruby, Python, PHP или Java, небольшой опыт в Javascript и полный новичок в Node.js.
Документ рассчитан на разработчиков уже знакомых с другими языками программирования. Это значит, что здесь не приводится объяснение действительно базовых вещей, таких как типы данных, переменные, управляющие структуры и т. д. Вы должные разбираться в этих понятиях, чтобы понимать эту книгу.
Однако, поскольку функции и объекты в JavaScript отличаются от своих аналогов в других языках, они будут описаны достаточно подробно.
Структура учебника
Прочитав данный документ до конца, вы сможете создать веб-приложение, которое позволит пользователям просматривать веб-страницы и загружать файлы.
Это, конечно, не изменит мир, но мы будем стараться и научимся писать не просто куски кода, которых «достаточно», чтобы сделать это возможным, но и создадим простой, полноценный framework для чистого разделения различных аспектов вашего приложения. Скоро вы увидите, что я имею в виду.
Мы начнем с выяснения того, чем JavaScript в Node.js отличается от JavaScript в браузере.
Далее мы остановимся на написании традиционного «Hello world»- приложения, которое является наиболее простым примером «что-то делающего» кода Node.js.
Тогда мы обсудим, какое «реальное» приложение мы хотим создать, проанализируем компоненты, которые необходимо реализовать для написания данного приложения и начнем работать над каждым из них шаг за шагом.
Как и было обещано, по пути мы узнаем о некоторых продвинутых понятиях JavaScript, о том как их использовать и посмотрим, почему разумно использовать эти понятия, вместо привычных нам в других языках программирования.
Исходный код законченого приложения доступен в the NodeBeginnerBook Github репозитории.
Содержание
О проекте
o |
Статус |
o |
Целевая аудитория |
o |
Структура учебника |
JavaScript и Node.js
o JavaScript и Вы o Предупреждение
o Server-side JavaScript
o "Hello World"
Полномасштабное веб-приложение с Node.js
o Что должно делать наше приложение o Задачи
Реализация приложения
o Простой HTTP-сервер
o Анализ нашего HTTP-сервера
o Передача функций в качестве параметра
o Как анонимная функция делает наш HTTP-сервер рабочим o Событийно-ориентированные обратные вызовы
o Как наш сервер обрабатывает запросы
o Выбор места для нашего серверного модуля o Что необходимо для «роутера»?
o Исполнение королевских постановлений в царстве глаголов o Роутинг реальных обработчиков запроса
o Создание ответа обработчиков запроса
Как делать не надо
Блокирование и не блокирование
Ответ обработчиков запроса с неблокирующими операциями.
o Сделаем что-нибудь полезное
Обработка POST-запросов
Обработка загрузки файлов
o Выводы и перспективы