Если вы планируете выучить новый язык в сфере ИТ, разработать приложение или вам нужна информация о Node.JS, вы обратились по адресу. Этот пост в блоге предназначен для людей, которым нужна краткая и легко усваиваемая информация о Node.js. Я надеюсь, что сообщение в блоге предоставит вам достаточно информации, которая в конечном итоге направит вас в правильном направлении.

Что такое Node.js?

Node.js — это среда выполнения JavaScript на движке Chrome V8 JavaScript. Программа V8 написана на C++, и на ней построен браузер Chrome.

Все мы знаем, что в последние годы JavaScript в основном использовался для клиентской или клиентской разработки. Но теперь мы можем использовать JavaScript на сервере с помощью Node.js для создания мощного, быстрого и масштабируемого веб-приложения.

Одной из основных причин популярности Node.js является его способность использовать управляемый событиями неблокирующий режим ввода-вывода. Вы, вероятно, запутались в техническом жаргоне, но давайте переведем их на то, что мы все можем понять.

Если вы знакомы с традиционными серверными технологиями, такими как PHP и Apache, каждое соединение или запрос создает новый поток. Это означает, что если у нас есть десять запросов, для каждого соединения будет создано десять потоков. Здесь нам нужно понять одну вещь: когда потоки создаются, это не означает, что все они будут выполняться одновременно, они должны ждать своего конкретного хода в очереди, пока первый не завершится и порядок не продолжится. Поэтому, пока выполнение не произойдет, оно должно ждать в системной памяти. Этот тип процесса интенсивно использует память, и процесс ожидания завершения одной задачи перед запуском новой называется синхронным способом.

С другой стороны, Node.js работает асинхронно. Он может выполнять несколько задач одновременно. Node.js работает в одном потоке и использует неблокирующий модуль ввода-вывода, который позволяет ему одновременно поддерживать тысячи подключений, удерживаемых в циклах событий. Другими словами, одной задаче не нужно ждать завершения другой задачи, чтобы быть выполненной, этот процесс не требует интенсивного использования ЦП, потому что ни одна из задач не стоит в очереди на выполнение, поэтому внутри нечего хранить. системная память.

Точно так же, когда мы говорим, что Node.js — это система управления событиями, все это означает, что она реагирует только тогда, когда на сервере происходит событие. Он использует класс eventEmitter для привязки событий к слушателям в приложении. Всякий раз, когда обнаруживается новое событие, триггер будет вызывать новые обнаруженные события синхронно без блокировки. Это позволяет нам создавать высокопроизводительные, хорошо масштабируемые приложения «реального времени».

НПМ

NPM (менеджер пакетов Node.js) помогает разработчикам JavaScript делиться кодами, которые они написали для решения конкретной проблемы, а другим разработчикам помогает повторно использовать коды других разработчиков. Другими словами, он используется для установки пакетов, также известных как модули.

NPM — один из крупнейших реестров программного обеспечения с более чем полумиллионом кодов JavaScript, доступных для загрузки разработчиками по всему миру. Поскольку каждый разработчик решает свои проблемы, коды в основном подходят для решения одной конкретной проблемы. Это позволит другим разработчикам повторно использовать код вместо создания нового, если он связан с их проблемой.

NPM не только помогает повторно использовать коды других разработчиков, но также помогает разработчикам работать вместе для получения лучших результатов, учась у других с разным опытом. Большинство пакетов или модулей внутри NPM можно использовать для серверной части, командной строки и внешнего интерфейса.

Еще один аспект Node.js заключается в том, что он включает в себя три типа модулей: 1) основные модули, 2) локальные модули и 3) сторонние модули. Основные модули скомпилированы в бинарный дистрибутив и загружаются автоматически при запуске Node.js. Они находятся внутри папки lib/.

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

var module = require(‘module_name’);

Например, http — это один из модулей основного модуля, чтобы использовать его, мы должны сначала его запросить. На рисунке ниже показано, как для использования модуля требуется импорт из ядра.

const http = require('http');
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World\n');
});

Чтобы использовать модули из NPM, просто зайдите на веб-сайт NPM и найдите модуль или проблему, которую вы хотите решить, выполнив поиск среди доступных пакетов. Например, если вам нужно использовать приложение погоды в своем приложении, просто введите погоду или используйте метод поиска с расширенным фильтром и найдите его.

После того, как вы нажмете «Поиск», вы будете перенаправлены к списку модулей, связанных с погодой, которые написаны разработчиками со всего мира.

Для нашего запроса «погода» мы мгновенно получаем 720 пакетов, хотя это, очевидно, подавляющее количество результатов; мы можем использовать фильтр слева, чтобы уточнить наш поиск.

Просмотрев результаты поиска, выберите нужный пакет и прочитайте документацию о том, как использовать его в своем приложении. Все пакеты в NPM поставляются с документацией по установке пакета и информацией о пакете. Если вы откроете один из пакетов из вашего поиска, он покажет вам описание модуля, инструкцию по установке, количество загрузок пользователями, любые проблемы с модулем, о которых сообщается.

Документация

При разработке любого типа приложения мы склонны полагаться на информацию, поступающую от хоста или из Интернета. Но одна вещь, которую следует учитывать при чтении или копировании кодов, — это его стабильность. Этот вопрос всегда возникает у программиста перед тем, как использовать какой-либо код в своем приложении. Похоже, люди из Node.js решили эту проблему. Одним из преимуществ использования документации на веб-сайте Node.js является то, что она позволяет вам увидеть уровень стабильности кода, который вы собираетесь использовать. Эти уровни стабильности выделены цветом и представлены под заголовком в документации. Цветовые коды: красный, зеленый и оранжевый. Красный означает стабильность 0, оранжевый — стабильность 1, зеленый — стабильность 2. См. описание на рисунке ниже.

Например, если вам нужно использовать HTTP-сервер и клиентский интерфейс здесь, он предоставит вам всю необходимую информацию и покажет вам уровень стабильности.

Помимо документации веб-сайта, у Node.js есть репозиторий в GitHub, чтобы помочь пользователям, если вам нужна помощь, нажмите здесь. Для получения информации о проблемах и решениях проблем в Node.js нажмите здесь.

Как упоминалось выше, Node.js — одна из лучших платформ времени выполнения JavaScript, которая позволяет легко создавать быстрые и масштабируемые сетевые приложения. Если вы хотите использовать Node для REST API и серверных служб, служб реального времени, таких как чаты и игры, блоги, системы управления контентом и утилиты в целом для всего, что не требует интенсивного использования ЦП, Node.js — лучший фреймворк для работы. с участием. Для получения дополнительной информации подробнее здесь.