Некоторые причины исчезнувшего ажиотажа. Неужели это финал? Что случилось, узнаете в этом выпуске.

 

В мае этого года в центре внимания был не только коронавирус - Deno распространился в сообществе разработчиков JavaScript и серверной части. 
Была там первая стабильная версия, и уже разразился огромный ажиотаж. 
Многие увлеклись Deno и с нетерпением ждали возможности попробовать что-то новое.

 

Интерес к Deno действительно был огромным.

 

Но что от этого осталось? Где те голоса, которые, возможно, даже думали, 
что Deno может заменить Node.js? Очевидно, от ажиотажа осталось немного.

 

Google подтверждает это:

   

   

   

 

Как вы можете видеть из Google Trends, поискового запроса Deno больше нет, как это было в первоначальной шумихе в конце весны и начале лета - также следует отметить, что Google Trends for Deno не включает категорию тема или язык программирования. 
Другие запросы Google по запросу Deno, которые не имеют ничего общего с технологией, по-прежнему включены в статистику.

 

 

Рост других технологий

 

В этом году уже было много чего предложить - в области фронтенда это был Svelte, в бэкенде - Deno. Кроме того, многие языки программирования в целом привлекают большое внимание. Rust и Julia являются хорошими примерами этого, в то время как популярность JavaScript не растет.

 

Новые технологии всегда приносят с собой новые возможности - новые фреймворки и библиотеки. Конечно, все они хотят, чтобы их опробовали - и поэтому, например, Actix Web от Rust привлек внимание, хотя бы в сообществе Rust и среди людей, заинтересованных в этом.

 

У Deno не было места для еще большего ажиотажа - но это еще и потому, что у него никогда не было амбиций перевернуть веб-мир с ног на голову - и это именно то, что стало ясно очень быстро.

 


 

Ничего грандиозного нового

 

В новостях о различиях между Deno и Node.js уже упоминалось об этом. 
Вот основные особенности, которые предлагает Deno:

 

  • - Нет поддержки NPM
  • - Разрешения
  • - Ожидание верхнего уровня
  • - Поддержка окна-объекта
  • - Поддержка TypeScript из коробки

 

Это была основная особенность, упомянутая в глотке воздуха с Deno.

 

После многих проб и ошибок большинство разработчиков, вероятно, поняли, что их мир перевернут не функции. Специально для существующих бэкендов нет большого стимула все менять.

 

Это также отражено в профессиональном использовании Deno - согласно StackShare.io, 7 компаний используют Deno.


 

Переезд стоит дорого - и отчасти бессмысленно

 

Deno и Node.js, конечно, очень похожи. В Deno вы не только зависите от TypeScript. JavaScript также поддерживает это прямо из коробки.

 

Но когда появляется слово JavaScript, вы должны думать о многих библиотеках и фреймворках, которые распространены в сообществе JS.
Некоторые из них также доступны в мире Node.js. Просто подумайте о Express.js, Koa, Sails, Axios, Lodash или Sequelize
Все эти библиотеки часто используются в проектах Node.js и могут быть легко установлены через NPM.

 

И NPM - это ключевое слово, которое почему-то заставляет вас думать о Deno, потому что использование модулей NPM с Deno само по себе не предназначено и поэтому довольно громоздко.
 

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


 

 

Никакой дополнительной производительности

 

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

 

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

 

Тем не менее нельзя не учитывать, что многие разработчики заинтересованы в производительности - даже если различия есть только на бумаге. 
Но с точки зрения производительности Deno не уступает Node.js.

 

Это не должно вызывать удивления. В конце концов, Deno никогда не стремился заменить Node.js с точки зрения производительности. Это было больше о безопасности и тому подобном.

 

Вы можете найти его на официальном сайте Deno - тесты, доказывающие, что Deno не самый быстрый фреймворк. Даже по сравнению с Node.js.

 

 

 

Стандартные модули HTTP-запроса и ответа Node.js и Deno сравниваются в показанном выше тесте. Тест показывает, что Node.js предлагает более высокую производительность. Мы провели тест между двумя платформами - результат тот же. Node.js работает явно лучше. Несмотря на то, что Deno в целом выглядит неплохо, многие люди в основном ищут производительность.

 

Конечно, производительность не должна быть единственным решающим элементом при выборе технологии. Фреймворки и технологии, такие как Fastify или HTTP-библиотеки для Go и Rust, которые выделяются своей производительностью, представляют большой интерес. Таким образом, вы можете четко сказать, что многие разработчики заинтересованы в хорошей производительности, а Deno не предлагает именно этого по сравнению с Node.js.


 

Это слишком рано

 

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

 

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

 

Все остальное было бы нелогичным. 
 

Не спешите переписывать существующие приложения Node.js с помощью Deno до того, как попробуете это сделать.
В то время, когда Node.js был анонсирован и выпущен в 2010 году, интерес к нему был невысоким. 
 

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


 

Подводя итоги

 

Deno неплох и имеет свое оправдание.

 

Node.js в своей первой версии не был сильно раскручен, и еще есть время для улучшений. 
Так что Deno, вероятно, продолжит развиваться.

 

В частности, что касается производительности и функций, которых мы еще не знаем из node.js.
Всё ещё может измениться. Так что любопытно, что будет с Deno, и что будет выпущено с новой версией.

Post Игорь Васильев
20 октября 2020 в 14:18