Когда я впервые начал пытаться осмыслить Node, и что, черт возьми, он делает, я был немного ошеломлен. Поскольку Node является одной из самых популярных технологий на сегодняшний день, для нее нет недостатка в ресурсах. Но тот факт, что я не до конца понимал, что он делает и почему он используется, означал, что я не знал, с чего начать свой путь обучения. В конце концов я прошел через несколько ресурсов (курсы, репозитории github, gists, веб-сайты…).

Поэтому я подумал, что составлю (очень субъективный) список инструментов и ресурсов, которые помогли мне и, следовательно, могли бы помочь полному новичку, заложить основы для понимания NodeJS - и что, черт возьми, он делает 🤔

Изучите и поймите NodeJS на Udemy

Этот курс Тони Алисы - отличный курс для тех, кто начинает с Node (и JavaScript).

Вот несколько причин, по которым мне понравился курс:

  • Прежде чем научить вас писать какой-либо код, он глубоко разбирается в том, почему вам стоит вообще потрудиться над изучением Node. Я подумал, что это освежающий подход, который помог мне понять основную логику и факты намного лучше, чем любые учебники по NodeJS, которые я делал (или слепо следовал) в прошлом.
  • Он определяет все ключевые концепции, необходимые для ясного и простого понимания того, что делает Node, без использования ненужного жаргона. Я серьезно не думаю, что полностью разбирался в серверах и клиентах, пока не посмотрел лекцию об этом в этом курсе! Рекомендуется вести список «громких слов», которые он определяет, когда вы с ними сталкиваетесь, поскольку у него нет этого списка, задокументированного в письменной форме в материалах курса.
  • У него есть хороший набор ресурсов для кодирования, которые можно использовать, чтобы сделать курс по желанию практическим и интерактивным, при этом имея доступ к рабочему и завершенному коду.
  • Он рассказывает, как использовать некоторые важные инструменты для кодирования на JavaScript и с помощью NodeJS: например, использование отладчика в VS Code и расширение Chrome Postman.
  • Он объясняет, как Node вписывается в «стек MEAN» (и что такое стек MEAN), создавая простое приложение, которое отображает основные функции Node и его роль в стеке MEAN.

Хотя многим более опытным разработчикам этот курс может показаться слишком упрощенным или медленным, я не могу рекомендовать этот курс достаточно высоко для тех, кто только начинает и не ищет чего-то особенно исчерпывающего.

Несколько советов:

  • Это не бесплатно, но вы можете поймать его на специальном сайте, если будете регулярно заходить на сайт (я купил его за 19 долларов).
  • Он содержит в общей сложности 13 часов лекций, но вы можете увеличить скорость видео, когда вам нужно. Я обнаружил, что большую часть времени работал с 1,25-кратным увеличением, в то время как я использовал 1,5-кратное увеличение при рассмотрении концепций, с которыми я уже был частично знаком.

Интерактивные уроки NodeSchool

Лучший способ сразу погрузиться в программирование - использовать интерактивные семинары в nodeschool.io. Эти семинары легко доступны, если у вас установлен Node локально. Просто установите его глобально, например:

npm install -g learnyounode

установит мастерскую «Learnyounode». Затем вы можете просто набрать learnyounode, чтобы запустить семинар (или набрать learnyounode help, чтобы увидеть меню помощи).

Однако будьте осторожны - не все мастерские на сайте содержатся в хорошем состоянии. Лично я бы рекомендовал попробовать «Learnyounode», поскольку он охватывает основные концепции Node, такие как: ввод-вывод, асинхронный ввод-вывод, модули, создание HTTP-сервера среди прочего.

Stream-adventure - тоже хороший вариант, если вы хотите больше узнать о потоках в Node (и меньше их бояться). Есть пара задач, которые не совсем четко объяснены, но быстрый поиск в Google приводит к некоторым проблемам на github, в которых есть четкие объяснения решений (которые, кстати, доступны, набрав stream-adventure solution).

Учебники по NodeGirls на github

Если вы просто хотите немного почитать, чтобы понять, что такое узел на самом деле, хорошим местом для начала будет репозиторий what-is-node NodeGirls. Он компактно охватывает все основные концепции Node и содержит ссылки на множество других замечательных ресурсов.

Я бы лично прочитал этот документ после того, как написал базовый код с использованием NodeJS, чтобы лучше понять такие концепции, как цикл событий и обратные вызовы.

Искусство узла от maxogden

Если вы новичок в NodeJS, но имеете опыт работы с одним или несколькими языками сценариев, искусство узла - отличное исчерпывающее объяснение всего, что связано с Node (потоки, модули, npm, события, обратные вызовы ...) с отличными ссылками на другие ресурсы.

Учебник LearnCode.academy на YouTube

Это хорошо, если вы уже знакомы с основными концепциями веб-разработки и не ищете особенно глубокого введения в NodeJS. Или вы просто хотите прыгнуть прямо в него и испачкать руки. Это видео с YouTube - это, по сути, ускоренный курс по NodeJS и ExpressJS - примерно через 15 минут вы создадите базовое веб-приложение. Он предполагает некоторые фундаментальные знания (такие как… что такое веб-сервер, что такое HTTP-запрос), но он действительно использует express-generator и архитектуру сгенерированных файлов, охватывает некоторые базовые концепции в Express и Node (например, маршруты, используя `res .send () `и т. д.) и демонстрирует использование инструмента сетевой отладки браузеров для отслеживания HTTP-запросов и ответов.

Я понимаю, что иногда обучение лучше в совместной среде. Итак, наконец, если вы хотите найти отличное сообщество поддерживающих пользователей NodeJS и JavaScript -

Посетите (или начните) семинар NodeGirls Australia!

Если вы живете в Сиднее, Мельбурне или Брисбене, подпишитесь на нас на Facebook или на веб-сайте, чтобы узнавать о предстоящих мероприятиях. NodeGirls Australia проводит несколько мероприятий в год, охватывающих несколько различных тем, связанных с JavaScript. На наших семинарах предпочтение отдается женщинам, но каждый может быть наставником - независимо от пола. И , и наставничество - отличный способ узнать больше о NodeJS!

Если вы не видите свой город среди глав NodeGirls, подумайте о том, чтобы начать новую главу. Вы можете узнать больше о том, как я начал брисбенское отделение NodeGirls Australia в этом среднем посте :-)

Надеюсь это поможет! Удачного кодирования 🤓