Версия 1 Deno была выпущена 13 мая 2020 года, но что это значит для вас? Заменит ли он Узел? Вся тяжелая работа, которую вы потратили на изучение node, полностью потрачена впустую? Давайте разберемся!

Deno - это новая среда выполнения для javascript. Так что думайте о Deno как о более новой версии node.js. Также интересно, что он создан тем же человеком, который создал node.js - Райан Даль

Райан видел все проблемы с узлом и неудачные дизайнерские решения, которые он принял во время разработки, но, поскольку теперь от него зависят миллионы программного обеспечения, невозможно внести поправки в унаследованный код. Поэтому он решил воссоздать node.js в лучшей форме, и таким образом родился Deno.

* Интересный факт * Deno на самом деле является анаграммой Node. Круто, правда !?

Посмотрите видео ниже, где Райан сожалеет о node.js и о том, почему он создает Deno.

Итог: Deno - это новая среда выполнения, построенная на Rust, которая будет очень похожа на node и будет делать много вещей, которые делает node, но с множеством преимуществ.

Одним из самых больших преимуществ Deno перед node является то, что он имеет встроенную поддержку TypeScript! Так что, если вы тот, кто использует TypeScript при написании JavaScript, вы можете просто использовать его прямо из коробки с Deno, поскольку он имеет компилятор и все встроенное, поэтому вам не нужно беспокоиться о какой-либо конфигурации TypeScript!

Теперь позвольте мне поразить вас по следующим двум пунктам:

  1. Проекту Deno не нужны node_modules для хранения стороннего кода.
  2. Проекту Deno не нужен package.json для управления вашими зависимостями.

Удивительно, правда? Теперь ваш следующий вопрос: как нам использовать сторонние библиотеки в Deno?

В следующей строке показан синтаксис того, как вы будете импортировать библиотеки в Deno.

импортировать {serve} из «https://deno.land/[email protected]/http/server.ts»;

Верно! Мы будем импортировать библиотеки прямо с сервера! (используя URL-адрес), и во время первой компиляции импортированная библиотека будет кэшироваться на вашем компьютере, чтобы последующие компиляции выполнялись быстрее.

Все ваши зависимости хранятся в центральном месте на вашем компьютере, поэтому вам не нужно беспокоиться об этой огромной папке node_modules.

Это полностью исключает использование диспетчера пакетов, такого как NPM.

Как только вы попадаете на сайт Deno, первое, что вы видите, это их слоган:

Безопасная среда выполнения для JavaScript и TypeScript.

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

Так Deno заменит Node?

Что ж, я должен сказать прямо сейчас, что это не так. Хотя Deno действительно крутой, и в нем появилось много новых функций, он все еще находится на очень ранней стадии, он недавно вышел на v1. Deno все еще работает над многими вещами, например, совместимость браузера все еще не на 100%, они все еще работают над API браузера, и им потребуется некоторое время, чтобы достичь этого.

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

Конечно, через определенный период времени люди начнут писать пакеты, совместимые с Deno, но во время публикации этой статьи это не так.

Если вам понравилось читать статью, не забудьте аплодировать.