Знакомство с Node.js
8 уроков
В этой части мы обсудим, что такое Node.js, зачем он вам нужен и как его использовать.
Ядро
6 уроков
Так же, как и в браузере, в Node.js имеются объекты и функции, доступные глобально, т. е. из любого места в программе. В этой части курса вы познакомитесь с глобальным объектом, научитесь работать с вводом и выводом, а также встретитесь со старыми друзьями из браузерного JavaScript.
Модули
7 уроков
Весь встроенный функционал Node.js разбит на отдельные файлы, которые называются модулями. Встроенные модули являются нашими главными инструментами в работе. Это то, что в других языках называется стандартной библиотекой. Помимо этого, система модулей в Node.js позволяет разделять наш код на составные части для того, чтобы упростить структуру проекта, ну и для повторного использования этих частей.
Файловая система
10 уроков
В отличие от браузера, в Node.js имеется доступ к файловой системе, т. е. мы можем открывать, создавать, изменять и удалять файлы и директории. В этой части курса вы научитесь выполнять основные операции с файловой системой.
События
4 урока
Одним из механизмов асинхронной работы в Node.js являются события, на которых основаны многие встроенные модули. В этой части курса мы познакомимся с этим важным понятием и напишем свою реализацию класса EventEmitter
, который лежит в основе событий в Node.js.
Потоки
5 уроков
Третьим механизмом асинхронной работы в Node.js являются потоки. Потоки повсеместно используются в Node.js для передачи данных, будь то взаимодействие программы с пользователем через терминал, чтение файла с диска или взаимодействие сервера с клиентом. В этой части курса вы научитесь работать с потоками.
npm
8 уроков
npm - это менеджер пакетов для Node.js. С его помощью вы сможете использовать миллионы строк кода, написанных тысячами программистов со всего света для решения самых разные задач.
HTTP
6 уроков
Уверен, вы согласитесь, JavaScript можно найти везде! Этот язык был разработан в середине 90-х, и предназначался для добавления простой интерактивности веб-страницам. С тех пор, почти за 20 с лишним лет, JavaScript превратился в полноценный язык программирования, которому посильны практически любые задачи. И это произошло благодаря появлению и развитию платформы для создания программ на JavaScript, которая называется Node.js и в этом курсе вы изучите основы этой платформы.
Что вы узнаете и чему научитесь
Начнем мы с обсуждения того, что такое Node.js, зачем он вам нужен и как его использовать.
Так же, как и в браузере, в Node.js имеются объекты и функции, доступные глобально, т. е. из любого места в программе. Во второй части курса вы познакомитесь с глобальным объектом, научитесь работать с вводом и выводом, а также встретитесь со старыми друзьями из браузерного JavaScript.
Весь встроенный функционал Node.js разбит на отдельные файлы, которые называются модулями. Встроенные модули являются нашими главными инструментами в работе. Это то, что в других языках называется стандартной библиотекой. Помимо этого, система модулей в Node.js позволяет разделять наш код на составные части для того, чтобы упростить структуру проекта, ну и для повторного использования этих частей. В третьей части курса вы познакомитесь с модульной системой в Node.js и научитесь создавать свои собственные модули.
В отличие от браузера, в Node.js имеется доступ к файловой системе, т. е. мы можем открывать, создавать, изменять и удалять файлы и директории. В четвертой части курса вы научитесь выполнять основные операции с файловой системой.
Практически все операции ввода и вывода в Node.js асинхронны. Одним из механизмов асинхронной работы в Node.js являются события, на которых основаны многие встроенные модули. В пятой части курса мы познакомимся с этим важным понятием и напишем свою реализацию класса EventEmitter
, который лежит в основе событий в Node.js.
Продолжая тему асинхронности, еще одним механизмом асинхронной работы в Node.js являются потоки. Потоки повсеместно используются в Node.js для передачи данных, будь то взаимодействие программы с пользователем через терминал, чтение файла с диска или взаимодействие сервера с клиентом. В шестой части курса вы научитесь работать с потоками.
В последней, седьмой, части курса вы познакомитесь с npm - менеджером пакетов для Node.js. С его помощью вы сможете использовать миллионы строк кода, написанных тысячами программистов со всего света для решения самых разных задач.
Для кого этот курс
Во-первых, курс подойдет тем, кто уже изучил основы JavaScript и хочет получить практический опыт использования языка. Если раньше набраться практики можно было только применяя JavaScript в браузере, то сейчас у вас есть выбор. И могу сказать, что на сервере практики вы получите достаточно.
Также курс подойдет front-end разработчикам, работающим с различными фреймворками типа Angular, React и т. д. Если вы хотите стать full-stack разработчиком, то Node.js — это отличный выбор.
Ну и третья категория — это back-end разработчики, программирующие на PHP, Python, Ruby, C# и других языках. Для вас это отличная возможность попробовать что-то новое.
Что нужно знать
Во-первых, js в названии Node.js не просто так, т. е. вам нужно знать основы JavaScript. Вам нужно уметь работать с объектами и массивами, знать, что такое функции обратного вызова, замыкания и классы. Все эти аспекты языка повсеместно используются при написании программ на Node.js.
В отличие от браузера, в Node.js мы точно знаем какая версия используется, т. е. мы можем спокойно использовать самый современный JavaScript без необходимости транспиляции. В курсе мы будем писать код в соответствии с новыми стандартами, так что хорошо, чтобы у вас был опыт работы с ними.
Для работы с Node.js используется терминал (консоль или командная строка), поэтому желательно чтобы у вас был опыт работы с ним. Ничего особенного знать не нужно, если вы знаете, как открыть терминал, посмотреть список директорий и файлов, то вы полностью готовы. Если же нет, то не отчаивайтесь, в этом курсе не используются сложные команды и даже без опыта вы справитесь.
Этот курс явяляется вашим первым шагом на пути изучения Node.js.