Node.js — даже его создатель считает его несовершенным


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

Проблема не в основной идее node.js. Взять движок JavaScript и создать асинхронную систему для запуска веб-службы — смелый план, и многие пользователи решили работать с ним.

Проблема с node.js заключается в более мелких вещах, которые изначально не казались такими важными, но со временем они стали важными. Выступая в JSConf EU, Райан Даль признает, что допускал ошибки — в основном, в вопросах безопасности и управления модулями. Он добавляет, что существует так много пользователей, которые зависят от этого, что невозможно изменить его.

Вместо этого он предлагает нам второй проект — Deno, перестановку букв в узле — на основе TypeScript, а не JavaScript. Компилятор TypeScript находится поверх движка V * JavaScript, поэтому он по-прежнему остается серверным JavaScript, даже если вы пишете TypeScript.

Проведя время вдали от node.js, работая с Go, Даль только недавно вернулся в node и был недоволен тем, что он испытал. Он по-прежнему доволен своей базовой архитектурой — асинхронным подходом, который избегает потоковой передачи. Однако, избегая модульной системы, он не использует npm — ему не нравится система сборки для них, имена модулей и папки модулей.

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

На этот раз Дено пытается сделать все правильно, и кто может лучше понять это, чем тот, кто ошибся и признал это. Deno все еще экспериментальный. Он работает с использованием передачи сообщений, и есть только одна точка входа в виртуальную машину. Это также очень современный JavaScript / TypeScript с обещаниями и ожиданием. Вы можете контролировать доступ к сети и файловой системе для дополнительной безопасности.

Проект находится на GitHub, и, хотя он еще только начинается, у него есть 27 участников, что хорошо для стартап-проекта.

Так будет ли node.js уступить место Deno?

Я сомневаюсь в этом.

Node.js появился как раз в нужное время, и запуск JavaScript в браузере и на сервере был большой достопримечательностью. Добавление шага времени компиляции для TypeScript — это то, чего многие программисты не хотят делать.

При этом, вероятно, есть место и для того, и для другого.

Ян Эллиот — автор JavaScript Async; Просто JavaScript: идиоматический подход; Просто jQuery: Core UI и Just jQuery: Events, Async & AJAX — все это часть библиотеки I Programmer Library, опубликованной I / O Press.


Добавить комментарий