Відбувся реліз Deno 2.0 RC. Чи замінить він Node.js?

Усі статті, обговорення, новини про Front-end — в одному місці. Підписуйтеся на телеграм-канал!

Вийшов реліз Deno 2.0 RC, який привертає увагу завдяки покращеній підтримці npm-модулів і новій системі дозволів. Основна зміна — майже повна сумісність з npm-пакетами, що дозволяє розробникам легко інтегрувати понад 2 мільйони модулів у свої проєкти без потреби переходу на Node.js.

Нова система дозволів отримала оновлення, спростивши роботу з правами доступу. Наприклад, замість старої помилки Deno.errors.PermissionDenied з’явилась нова Deno.errors.NotCapable, що робить діагностику проблем зручнішою. Також спрощено роботу з деякими API, зокрема Deno.mainModule більше не вимагає використання флагу —allow-read.

Оновлення торкнулися і безпеки: тепер, при запуску процесів за допомогою флагу —allow-run, без списку дозволених бінарних файлів, буде виведено попередження.

Крім цього, Deno 2.0 RC підтримує високоточний час без використання флагу —allow-hrtime і стабілізує API WebGPU та FFI, що спрощує їх використання без додаткових налаштувань.

Як вважаєте, чи зможе він скласти конкуренцію Node.js?

👍ПодобаєтьсяСподобалось1
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Особисто я не розумію який сенс використовувати Deno чи Bun замість Node.js, ці технології для мене це якийсь популізм. Типу часто коли розказують про Deno чи Bun там розповідають:
«ооо, а знаєте що? У нас є:
1. Native API permission management (явний дозвіл доступу до файлової системи, мережі і т.д.)
2. STD
3. Нативна підтрика Typescript
4. Нативний Watch mode
5. Нативний dotenv
6. Single file executable
7. Перформанс!!!
8. Нативний форматтер
9. Нативний лінтер
»
Але прикол в тому, що всі ці люди схоже не читають блог і патч ноути Node.js, бо:
— у Node.js є підтримка 1,4,5,6 пунктів.
— STD теж фактично є якщо взяти все що є в нативних модулях Node.js (node:)
— Нативна підтримка TS, це як на мене швидше мінус ніж плюс, бо з певною конкретною версією рантайму буде йти конкретна версія TS, тобто не вийде менеджити версію TS окремо від версії рантайму.
— Ще щодо permissions API взагалі не розумію який сенс цієї фічі, якщо ваша апка це не скрипт на один файл, чи якісь примітивні круди, а повноцінний бекенд, вам швидше всього знадобиться вмикати всі пермішени, і виграшу виходить аж 0 від цієї фічі. Якби ці пермішени налаштовувалися на кожну лібу окремо це інша справа, але вони налаштовуються на всю апку.
— Щодо перформансу, насправді якщо використовувати правильні залежності, по типу Fastify, fastify-uws, чи Hono, а не слідувати Express.js карго-культу то перформанс Node.js не буде поступатися задекларованим цифрам Bun та Deno.
— 8, 9 щось у мене сумніви, що ці нативні рішення хоча б наздоганяють функціонал і екосистему ESLint та Prettier.

Виправте, може щось не шарю за кіллер фічі Deno та Bun, бо поки мені здається, що функціонал і якість імплементації цього самого функціоналу ідентичний, або поступється Node.js

На мій погляд, щоб Deno відхопити частину ринку у Node.js, потрібно зробити дві речі:
1) Повна сумісність з npm (мінімізувати витрати перемикання)
2) Якась нова підривна технологія (навряд чи TypeScript з коробки в Deno може бути такою)

Те, що анонсовано, можна віднести тільки до першого пункту. Але цього недостатньо. Тому залишається конкурувати зручністю і швидкістю. І тут на арену виходить Bun. Тому я думаю, що Deno все ще слабкий конкурент.

Разбирался с Deno. Там явно не глупые люди сидят

Конкуренція це завжди добре. Але у випадку рантаймів навряд він відкусить якусь вагому долю на ринку. Хоча це моє припущення лише, а припущення можуть бути хибними.

Підписатись на коментарі