Deno - это среда, похожая на Node.Js. Если у Node js есть некоторые ограничения, такие как проблемы с безопасностью, вся система сборки, пакеты, node_modules и т. Д. Deno преодолевают эти ограничения.

Deno - это среда выполнения для JavaScript и Type Script. Он основан на движке V8 JavaScript и языке программирования Rust.

Deno стремится быть производительной и безопасной средой написания сценариев для современного программиста.

Deno можно использовать для создания веб-серверов, выполнения научных вычислений и т. Д.

Обязательно прочтите: 5 лучших фреймворков для разработки JavaScript в 2020 году

Основные особенности Deno

Безопасность

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

Автономная среда

Deno исключает npm, который является менеджером пакетов. В частности, Deno играет роль как среды выполнения, так и диспетчера пакетов в рамках одного исполняемого файла, а не требует отдельной программы управления пакетами. В Deno есть встроенный менеджер пакетов для выборки ресурсов.

Модули

Deno загружает модули по URL. с использованием URL-адресов. Для распространения пакета в Deno не требуется централизованный реестр. В централизованном реестре Node.Js NPM создал массу проблем. Это преодолено в Deno.

Когда мы запускаем приложение, Deno загружает все импортированные модули и кеширует их. После того, как они будут кэшированы, Deno не будет загружать их снова, пока мы специально не попросим об этом с флагом перезагрузки.

Совместимость с браузером

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

Совместимость с браузером означает, что там, где мы частично совпадаем по функциональности с браузером, например, fetch (), мы используем API браузера. Есть много вещей, которые вы можете сделать с помощью программы «DD», которая не будет работать в веб-браузере, - машинописный текст - одна из них. Если вы используете JavaScript и не импортируете встроенный модуль «означать», сценарий должен быть совместим с браузером.

Подмножество программ Deno, которые полностью написаны на JavaScript и не используют глобальное пространство имен Deno (или функциональный тест для него), должны иметь возможность работать в современном веб-браузере без изменений.

Управление версиями пакетов

Управление версиями должно поддерживаться поставщиком пакета, но со стороны клиента это сводится к простой установке номера версии в URL-адресе.

Поддержка TypeScript

Deno упрощает использование Type Script без необходимости в каких-либо настроенных файлах. Можно писать программы на простом JavaScript и без проблем выполнять их с помощью Deno.

Минимизация API

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

Разрешение на выполнение действий

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

Deno не позволяет связывать случайные и непоследовательные собственные функции в JavaScript V8. Системные вызовы выполняются путем передачи сообщений только двумя встроенными функциями - send и recv - это упрощает дизайн и упрощает анализ.

Выводы

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