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 значительно упростит программирование для программиста. Это приводит нас к гораздо более чистому и простому решению, идеально согласованному с браузерами. Легкость доступа к функциям делает его более дорогим для программистов.