Блог

Почему мы используем Node.js

Редакция Lodoss Team
0

Мы начали использовать Node.js с 2009 года. Это была версия 0.0.3. И мы используем его до сих пор. В этой статье я расскажу, почему мы его используем и почему не хотим переходить на что-то другое.

1. Популярность

Судя по статистике от stackoverflow, уже несколько лет Javascript является самым популярным языком программирования. А Node.js и React являются самыми популярными фреймворками/библиотеками.

Это очень важно. Ведь если у вас есть проект на популярном языке, то вы всегда сможете легко найти для него программиста за разумную цену. Если же вы будете использовать редкие языки программирования, то найти будет сложно, и стоить это будет значительно дороже.

2. V8 POWER

Node.js построен на движке v8, который также используется в браузере Chromium и его производных. Этот движок имеет очень сильную поддержку со стороны пользователей и сообщества The Chromium Authors, в том числе компании Google и некоторыми другими (Opera Software, Яндекс, NVIDIA, …). Поэтому он постоянно улучшается, оптимизируется, становится все быстрее и получает поддержку новейших технологий.

3. NPM

На NPM существует очень большое количество различных библиотек, модулей и прочих полезных вещей. И использовать их очень легко. Единственный минус, конечно, это размеры самих модулей, подключаемых к проекту.

Кстати, мы тоже опубликовали несколько модулей – [https://www.npmjs.com/~lodossteam]

4. Один язык для всего

Если вы используете Node.js то вам не нужно распыляться. Все свои силы вы будете тратить на изучение одного языка как для фронтенда, так и для бекенда. А на React-native можно создавать и мобильные приложения.

5. I/O blocking? Не слышал!

Node.js отлично работает с приложениями, для которых не нужна блокировка ввода/вывода. Например, вы можете одновременно читать данные из файла, записывать данные в файл, записывать данные в базу данных.

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

0