The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Проект Deno развивает защищённую JavaScript-платформу, похожую на Node.js

17.02.2020 22:11

Доступен выпуск проекта Deno 0.33, предлагающего похожую на Node.js платформу для обособленного выполнения приложений на языке JavaScript и TypeScript, которая может быть использована для выполнения приложений без привязки к браузеру, например, для создания обработчиков, работающих на сервере. В Deno используется JavaScript-движок V8, который также применяется в Node.js и браузерах на основе проекта Chromium. Код проекта распространяется под лицензией MIT. Проект развивает Райан Даль (Ryan Dahl), создатель JavaScript-платформы Node.js.

Одной из главных целей создания нового runtime для JavaScript является предоставление более защищённого окружения. Для повышения безопасности обвязка вокруг движка V8 написана на языке Rust, позволяющем избежать многих уязвимостей, возникающих из-за низкоуровневой работы с памятью, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей и выход за границы буфера. Для обработки запросов в неблокирующем режиме применяется платформа Tokio, также написанная на языке Rust. Tokio позволяет создавать высокопроизводительные приложения на основе событийно-ориентированной архитектуры (Event-driven), поддерживающие многопоточность и обработку сетевых запросов в асинхронном режиме.

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

  • Ориентация на безопасность в конфигурации по умолчанию. Обращения к файлам, сетевые возможности и доступ к переменным окружения по умолчанию блокированы и требуют явного включения;
  • Встроенная поддержка языка TypeScript помимо JavaScript;
  • Runtime поставляется в форме одного самодостаточного исполняемого файла ("deno"). Для запуска приложений при помощи Deno достаточно загрузить для своей платформы один исполняемый файл, размером около 10 Мб, не имеющих внешних зависимостей и не требующий какой-то особой установки в систему;
  • При запуске программы, а также для загрузки модулей можно использовать адресацию через URL. Например, для запуска программы welcome.js можно использовать команду "deno https://deno.land/std/examples/welcome.js". Код с внешних ресурсов загружается и кэшируется на локальной системе, но никогда автоматически не обновляется (для обновления требуется явно запустить приложение с флагом "--reload");
  • Эффективная обработка в приложениях сетевых запросов по HTTP, платформа рассчитана на создание высокопроизводительных сетевых приложений;
  • Возможность создания универсальных web-приложений, которые могут выполниться как в Deno, так и в обычном web-браузере;
  • Кроме runtime платформа Deno также выполняет роль пакетного менеджера и позволяет внутри кода обращаться к модулям по URL. Например, для загрузки модуля можно указать в коде "import * as log from "https://deno.land/std/log/mod.ts". Файлы, загруженные с внешних серверов по URL кэшируются. Привязка к версиям модулей определяются через указания номеров версий внутри URL, например, "https://unpkg.com/[email protected]/dist/liltest.js";
  • В состав интегрирована система инспектирования зависимостей (команда "deno info") и утилита для форматирования кода (deno fmt).
  • Для разработчиков приложений предложен набор стандартных модулей, прошедших дополнительный аудит и проверку на совместимость;
  • Все скрипты приложения могут быть объединены в один JavaScript файл.

Отличия от Node.js:

  • Deno не использует пакетный менеджер npm и не привязывается к репозиториям, адресация модулей осуществляется через URL или по файловому пути, а сами модули могут размещаться на любом сайте;
  • В Deno не используется "package.json" для определения модулей;
  • Различие API, все асинхронные действия в Deno возвращают promise;
  • Deno требует явного определения всех необходимых полномочий для файлов, сети и переменных окружения;
  • Все ошибки, не снабжённые обработчиками, приводят к завершению выполнения приложения;
  • В Deno применяется система модулей ECMAScript и не поддерживается require().


  1. Главная ссылка к новости (https://github.com/denoland/de...)
  2. OpenNews: Выпуск серверной JavaScript-платформы Node.js 13.0
  3. OpenNews: Mozilla развивает WASI для использования WebAssembly вне браузера
  4. OpenNews: Facebook открыл код JavaScript-движка Hermes
  5. OpenNews: Основатель QEMU и FFmpeg опубликовал JavaScript-движок QuickJS
  6. OpenNews: Бывший техдиректор NPM развивает распределённый репозиторий пакетов Entropic
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/52387-deno
Ключевые слова: deno, node.js, javascript, rust
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (97) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 22:24, 17/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хрень же, я писал про это
    https://habr.com/ru/post/476972/

    Мне всё грозились написать опровержение, но 4 месяца прошло, а воз и ныне там.

     
     
  • 2.31, Аноним (31), 04:41, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    О, да, импорты по урлам - это прям гениально.

    import {leftpad} from "http://narod.ru/vasyan/leftpad.js"

     
     
  • 3.39, Антон (??), 07:26, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    это первое, что отталкивает в Golang. Но плохо это или хорошо на самом деле, я пока не определился.
     
     
  • 4.46, йкЛще (?), 10:19, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А Гоша вам чем не угодил?
     
     
  • 5.68, Аноним (68), 20:44, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Циклическими ссылками, необходимостью git репозиториев как импорта, ...
     
     
  • 6.92, Аноним (92), 11:42, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вы не поверите, но на go можно писать свои проекты и использовать чужие вообще без git, достаточно скачивалки (wget/curl), mkdir и tar.
     
  • 4.47, index0h (ok), 10:40, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > это первое, что отталкивает в Golang. Но плохо это или хорошо на самом деле, я пока не определился.

    Видимо от вас кто-то скрывает go mod и go dep, а так же то, чем отличается путь к пакету от урла

     
     
  • 5.70, Аноним (70), 22:46, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > go mod и go dep

    Их когда подвезли-то?

     
     
  • 6.78, GentooBoy (ok), 04:00, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    первый где то год назад второй более 2 лет назад
     
  • 3.51, Аноним (51), 11:37, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чувак, ты не поверишь - любой пакет менеджер скачивает всё по урлам.
     
     
  • 4.58, Ник адекватная выдралюдоед древности (?), 13:59, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Но не любой язык программирования подключает их напрямую прямо по урлам.
    Если память мне не изменяет в Go прямо что-то вида:
    include github.com/animal/some-lib/

    Это очень прикольно, но слишком уж связывает. Можно подменить её там, можно зависеть от одной библиотеки, но подключать из разных мест, а что будет, когда Гитхаб рухнет?
    (Но прикольно)

     
     
  • 5.59, Ник адекватная выдралюдоед древности (?), 14:04, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ps: Чёто опеннет вырезает минусы из ников. Я вводил "Адекватная выдра-людоед древности", а получилась выдралюдоед почему-то. Заменим на дефис и посмотрим что получится. А ещё попробую минус заголовок.
     
  • 5.79, GentooBoy (ok), 04:05, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    кто то запрещает другие названия в $gopath вам писать и самостоятельно фетчить файлы без  go get
    >include github.com/animal/some-lib/

    github.com/animal/some-lib/ - это не url, это относительный путь.

     
  • 5.91, Аноним (92), 11:41, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Но не любой язык программирования подключает их напрямую прямо по урлам.

    Прежде всего это локальные каталоги.

     
  • 4.64, Аноним (31), 16:36, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В пакетном менеджере поменять один URL на другой - вопрос его конфигурации.
    Можно вообще свое кэширующее-проксирующее зеркало поднять, какой-нибудь Verdaccio.

    А тут как?

     
     
  • 5.69, Антон (??), 20:53, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    тут придется свой карманный github поднять :)
     
     
  • 6.90, Аноним (92), 11:39, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Положил сорцы в $GOPATH/github.com/someone/somepackage — go их подхватил.
    Получается, я поднял свой карманный github?
     
     
  • 7.94, Анончик (?), 13:02, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Да ему это не надо он на go не прлграммирует, но мнение имеет
     
  • 2.57, крок (?), 13:47, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    На хубре писать - себя не уважать!
     
  • 2.63, Урри (?), 15:30, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    О, чувак в странной рубашке ))

    Слушал твое выступление, было интересно. Хотя нода и жс, конечно же, говно :)

     

  • 1.2, Vaskiller (ok), 22:27, 17/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно, а версии модулей как тогда контролировать?
     
     
  • 2.4, Аноним (4), 22:33, 17/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Simply specify the version in the URL For example, this URL fully specifies the... большой текст свёрнут, показать
     
     
  • 3.9, Vaskiller (ok), 22:52, 17/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Понял, спасибо :)
     
  • 3.20, Аноним (51), 00:59, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –8 +/
    > https://unpkg.com/liltest@0.0.5/dist/liltest.js

    Одному мне кажется, что для обозначения версии знак "#" выглядел бы более уместным, нежели "@"?

     
     
  • 4.35, Аноним (35), 06:01, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +13 +/
    Один ты не знаешь, что всё, что после #, на сервер попросту не передается и остается на стороне юзер-агента.
     
     
  • 5.60, Ник адекватная выдралюдоед древности (?), 14:07, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    А параметры для фронтенда можно через # передавать?
     
     
  • 6.84, Lex (??), 07:08, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Всё, что после решётки - это т.н якорная ссылка.
    В самом простом случае, на её основе делают примитивную навигацию( т.к если будет обращение по юрл#заключение и на странице, "совершенно случайно", окажется элемент с ИД "заключение", то браузер автоматически перемотает страницу до этого элемента ).

    Для фронта как только и чего не передают.. в случае с якорными ссылками, вроде можно "передавать" некоторые аргументы даже в css( правила на основе текущего юрла и его частей )

     
  • 3.32, Аноним (31), 04:49, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А если это не assertion library, а библиотека, которая использует другую библиотеку, которая использует другую библиотеку? Все рекурсивно выкачивать и заменять везде импорты на "свои"?

    У - Удобно.

     

  • 1.3, Неопенсурсныйдыбыл (?), 22:28, 17/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Удобно.
     
  • 1.5, Аноним (5), 22:40, 17/02/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     

  • 1.7, th3m3 (ok), 22:42, 17/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +9 +/
    То он уходит из Node.js и потом, через несколько лет - говорит, мол что лучше Go для сервера нет. Потом пишет Deno на Go. Внезапно понимает, что Go не то, Rust - круче. Переписывает Deno на Rust...

    Да что с ним не так? Вангую, что он потом уйдёт из Deno и через 10 лет, будет пилить аналог на чём-то там ещё.

     
     
  • 2.10, олавф (?), 22:53, 17/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    патон или раку
     
  • 2.12, Аноним (4), 22:57, 17/02/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    В таких метаниях и появляется что-то новое и полезное. В своё время ему про Node.js говорили про то, что он какой-то чепухой занимается и JavaScript на сервере - это нонсенс.
     
     
  • 3.18, Аноним (-), 00:22, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +7 +/
    > В таких метаниях и появляется что-то новое и полезное.

    Совершенно не обязательно.

    > и JavaScript на сервере - это нонсенс.

    Ну так правильно ж говорили. До гугла даже вон дошло, но в результате пришлось самим пилять.

     
  • 3.33, Аноним (31), 04:52, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    И только через 10 лет после того, как он запилил свой ноджс и свалил, его поделку худо-бедно допилили до условно-пригодного в продакшене решения.
     
  • 3.49, proninyaroslav (ok), 11:07, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    С такими метаниями только фрагментацию можно ожидать
     
  • 2.37, Аноним (37), 06:29, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Эталонный хипстер.
     
  • 2.48, Аноним (48), 10:51, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Переписали на Rust, потому что не хотели иметь два одновременно работающих GC - гошный и v8.
     
     
  • 3.55, Аноним (55), 12:21, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Будут теперь падать в проде когда наберут мусор?
     
     
  • 4.62, Ник адекватная выдралюдоед древности (?), 14:12, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    В принципе и одного хватит.
    Чтобы падать.
     
  • 3.61, Аноним (61), 14:11, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не GC, а event machine.
     

  • 1.8, Аноним (8), 22:43, 17/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Deno требует явного определения всех необходимых полномочий для файлов, сети и окружения;

    За это можно уже простить многое.

     
     
  • 2.11, Аноним (1), 22:56, 17/02/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Только насколько же через жопу это сделано...
     
     
  • 3.41, Q2W (?), 07:58, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Насколько?
     

  • 1.13, nelson (??), 23:02, 17/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >> Для повышения безопасности обвязка вокруг движка V8 написана на языке Rust

    нужен ещё один слой - на гошке, чтобы уж наверняка
    >> избежать многих уязвимостей, возникающих из-за низкоуровневой работы с памятью, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей и выход за границы буфера

    можно путём привлечения к проекту квалифицированных разработчиков вместо смузи-кодеров

     
     
  • 2.14, Аноним (14), 23:04, 17/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Гошка тут такой себе вариант, поскольку раст быстрее и без gc
     
  • 2.15, Аноним (15), 23:35, 17/02/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > можно путём привлечения к проекту квалифицированных разработчиков вместо смузи-кодеров

    Где же эти квалифицированные герои, которые играючи способны решить в уме проблему остановки на кодовой базе в миллионы строк - герои, что ни разу за свою жизнь не вызвали UB? Где они, когда они так нужны миру, в котором число CVE растет с каждым днем? Где же те ребята, для которых водка и Си слишком сладки и приторны, а потому они предпочитают технический спирт и простой родной машинный код? И во сколько эти герои обойдутся любому проекту?

     
     
  • 3.19, Аноним (-), 00:35, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    При том большая часть CVE почему-то уже давно обнаруживается в вебмакачной хне, писаной на "безопасных" казалось бы языках. Вон там один eval() на входных данных удумал, безопасТничек.
     
     
  • 4.23, Krasnoglazik (?), 01:03, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Лучше eval() на входных данных только... Эээ... виндокапец?
     
     
  • 5.27, Аноним (-), 02:39, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Вроде бы это ортогональные вещи. Из общего у них только то что это вызывает море лулзов. Если это - не у вас!
     
  • 4.25, Аноним (15), 01:11, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Я и не имел в виду, что "умная семантика" языка может решить все проблемы программирования - скорее что-то в духе "на компилятор надейся, а сам не плошай", хех.

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

     
     
  • 5.28, Аноним (-), 02:43, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Насколько я вижу, в результате прогеры начинают полагать что безопасно по дефолт... большой текст свёрнут, показать
     
     
  • 6.30, Аноним (-), 04:17, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Какой изящный съезд с темы на аналогии это ведь совсем не признак иррационально... большой текст свёрнут, показать
     
     
  • 7.71, Аноним (71), 00:38, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Какой изящный съезд с темы на аналогии (это ведь совсем не признак
    > иррационального поведения, о нет!). Браво!

    Клевый передерг. Но народная мудрость гласит что most dangerous time is when you feel yoursafe safe.

    > Только вот беда - в современных инструментах с лезвиями и мотором уже
    > давно встаривают кучу разных предохранителей.

    Очень сильно зависит от оборудования. Какие предохранители в обычной дрели? :)

    > цепи при отпускнии рукоятки. О всяких станках и индустриальом оборудовании вообще
    > промолчим - хотя казалось бы, просто не щелкай клювом и все будет нормально!

    Угу, иди вон на подстанции какой-нибудь работу предохранителей зацени, умник. Как тебя изжарит до тапков - может и сработает, конечно.

     
     
  • 8.75, Аноним (75), 01:09, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Клевое продолжение съезда с темы Есть анонимная мудрость, а есть статистика И ... большой текст свёрнут, показать
     
     
  • 9.99, Аноним (-), 02:41, 21/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    И что характерно, там таки сишка А юзеры если от чего и умрут - то явно не от п... большой текст свёрнут, показать
     
  • 6.50, Аноним (50), 11:24, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Я прямо стесняюсь спросить, а дрелью или там вообще циркулярной пилой мне пользоваться можно?

    https://youtu.be/kf1rvv1p_78

    > Но вот почему бы взрослого человека надо ограничивать?

    На видео эти самые ваши взрослые люди.

    > Это что ж теперь, превратить глобус в глобальный детсад?

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

     
     
  • 7.72, Аноним (71), 00:40, 19/02/2020 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 6.56, Водитель (?), 13:09, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Насколько я вижу, в результате прогеры начинают полагать что безопасно по дефолту,
    > за них подумает вумный компилер, рантайм и либы, а потом в
    > результате оказывается как-то вот так.

    А ABS, ESP и прочие ассистенты позволяют хомякам на рядовой машине в случае нужды оттормозиться не хуже Шумахера. Даже при дожде.
    Еще и подушки безопасности с прочими системами придумали - в результяте хомяки-водятлы начинают полагать что безопасно по дефолту, за них оттормозится вумный ассистент, активная защита защитит, а в результате оказывается как-то вот так.
    Ну я так вижу. И пофиг на статистику, доказывающую обратное - у меня водительский стаж 20 лет, я лучше знаю!

     
     
  • 7.73, Аноним (71), 00:41, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > А ABS, ESP и прочие ассистенты позволяют хомякам на рядовой машине в
    > случае нужды оттормозиться не хуже Шумахера. Даже при дожде.

    И что самое забавное - они написаны на сях :). Предлагаю срочно переписать на каком-нибудь пихторнасте и посмотреть что с шумахерами будет дальше.

     
     
  • 8.76, Аноним (-), 01:20, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Самое забавное - для сей в авто почему-то придумали MISRA-C и кучу проверочных т... текст свёрнут, показать
     
     
  • 9.83, Аноним (83), 05:41, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вообще, если поискать, несколько наколенных тулсов для проверки рулесов MISRA... большой текст свёрнут, показать
     
     
  • 10.95, Аноним (-), 13:55, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Но аноним это ведь не использует - это же развращает и в результате прогеры нач... большой текст свёрнут, показать
     
     
  • 11.100, Аноним (-), 03:00, 21/02/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Там где это важно, аноним, грубо говоря, следует совету пишите ваш код так как ... большой текст свёрнут, показать
     
  • 3.24, Krasnoglazik (?), 01:04, 18/02/2020 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     

     ....ответы скрыты (20)

  • 1.17, Kuromi (ok), 00:10, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Больше стандартов, надо еще больше стандартов!
     
  • 1.21, Krasnoglazik (?), 01:01, 18/02/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     
  • 1.22, Аноним (51), 01:01, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > выпуск проекта Deno 0.33, предлагающего похожую на Node.js платформу (...) Проект развивает Райан Даль (Ryan Dahl), создатель JavaScript-платформы Node.js.

    Как в том анекдоте "Этих отмоем или новых наделаем?" В данном случае автор решил, что проще новое родить.

     
  • 1.26, vitalif (ok), 01:19, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Мы за него рады, но нам как-то похрену.

    Кто maven видел, npm не ругает.

     
  • 1.29, Аноним (-), 03:03, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >защищенную
    >javascript

    выберите что нибудь одно

     
     
  • 2.36, Аноним (35), 06:05, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    яваскрипт - один из тех языков, который обычно работает из-под чрезвычайно ограниченного рантайма. А то, что, например, npm-пакеты воруют биткоины - все претензии к политике самого npm.
     
     
  • 3.74, Аноним (74), 00:51, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > яваскрипт - один из тех языков, который обычно работает из-под чрезвычайно ограниченного рантайма.

    Некоторым неймется. Мозилла делала чудный 0day, гугл webusb запилил. В общем ожидается много интересной фигни.

    > А то, что, например, npm-пакеты воруют биткоины - все претензии к политике самого npm.

    У JS исторически с безопасностью - "не очень", а учитывая уровень долбоклюизма разработчиков на этом - безопасный софт на JS почти фантастика.

     
     
  • 4.85, Lex (??), 07:12, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    "безопасный софт" - это миф вне зависимости от применяемого ЯП
     
     
  • 5.101, Аноним (-), 03:07, 21/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > "безопасный софт" - это миф вне зависимости от применяемого ЯП

    А вот что не миф так это defensive coding. Поэтому сломать например djbdns вы не сможете даже несмотря на сишку. А мозильский хипстерский крап дырявый даже на JS.

     

  • 1.34, Аноним (34), 05:49, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Обращения к файлам, сетевые возможности и доступ к переменным окружения по умолчанию блокированы

    Ничего, быдлокодеры скопипастят кусок, который включает сразу всё.

     
     
  • 2.80, Аноним (-), 05:27, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Ничего, быдлокодеры скопипастят кусок, который включает сразу всё.

    А есть готовое? Подумалось что если вебманки хотят гранату, надо ее и держать наготове для раздачи :)

     
     
  • 3.98, Аноним (34), 01:44, 20/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Не знаю. Я стратег :)
     

  • 1.38, Аноним (38), 07:20, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не совсем в тему но рядом.

    А есть кто спец по всем этим технологиям ?
    Можете попроще описать что есть NW.js ? Не понятно к примеру (не побоюсь этого слова) Электрон юзают без NW.js или как ?

     
     
  • 2.40, Антон (??), 07:28, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    это аналог Electron
     

  • 1.42, Аноним (42), 08:16, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >  позволяющем избежать многих уязвимостей, возникающих из-за низкоуровневой работы с памятью, таких как обращение к области памяти после её освобождения, разыменование нулевых указателей и выход за границы буфера

    А можно писать на С и использовать ядро ОС, компилятор и/или процесор для гарантии отсутствия всех перечисленных классов уязвимостей.

     
     
  • 2.44, Аноним (44), 09:22, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Можно. Даже есть вполне адекватный инструментарий.
     

  • 1.43, Александр (??), 09:17, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Для повышения безопасности обвязка вокруг движка V8 написана на языке Rust...
    всё что нужно знать
     
     
  • 2.81, Аноним (-), 05:28, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Для повышения безопасности обвязка вокруг движка V8 написана на языке Rust...
    > всё что нужно знать

    Натянули кондом на свечку, ага.

     

  • 1.45, Сеньёр Помидор (?), 09:26, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    ммм а чем докер не угодил?
    разве кто еще таскает за собой нативную среду?
     
     
  • 2.53, Аноним (53), 11:50, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Кто-то в 2020-м еще пользуется докером? Я думал бездумная мода тащить его во все проекты - уже давно прошла.
     
     
  • 3.87, Lex (??), 07:16, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ну а чем ещё например ?
     
  • 2.54, Аноним (55), 12:19, 18/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Думаешь виндовые фронтендщики будут таскать с собой докер для своих вебпаков с гульпами и всякими другими лайврелоадами? Они локально запускаются под рутом и никакого окружения не используют. Таким ничего не поможет.
     

  • 1.52, Аноним (52), 11:41, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    > Проект развивает Райан Даль (Ryan Dahl), создатель JavaScript-

    платформы Node.js.

    Влади́мир Ива́нович Даль (10 [22] ноября 1801 — 22 сентября [4 октября] 1872) — русский писатель, этнограф и лексикограф, собиратель фольклора, военный врач. Наибольшую славу принёс ему непревзойдённый по объёму «Толковый словарь живого великорусского языка», на составление которого ушло 53 года.

    Райан Даль (Ryan Dahl) - создатель JavaScript-
    платформы Node.js. На создание ушло 2 года.

     
  • 1.65, Аноним (65), 18:00, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Что-то мне подсказывает, что Даль нанял японских программеров
    Но сэкономить не получилось
     
  • 1.66, Аноним (66), 18:12, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > обращение к области памяти после её освобождения, разыменование нулевых указателей и выход за границы буфера

    Где-то я уже слышал, причем не раз. Хейтеры C/C++ пользуются одной методичкой?

     
     
  • 2.77, анонимуслинус (?), 03:07, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    просто задание свыше. наплодить побольше быдлокодеров( увы но так). а с/с++ останется для профи. тех кто реально сечет в том , что такое программы.)) ну знаешь авто тоже с автоматом полно, но вот только спецы для спец задач предпочтут механику. унсэф режим в расте сделали с попыткой привлеч спецов походу. потому как они могут мыслить весьма нестандартно и им может потребоваться "ручной режим".
     
     
  • 3.88, GentooBoy (ok), 08:03, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Я даже видел этих спецов 1-2-3-4-5-6  а теперь режим ракета
    Ну а если серьезно то ты не только в программировании отстал, но и в автомобиле строении ))

     
  • 2.82, Аноним (-), 05:29, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Где-то я уже слышал, причем не раз. Хейтеры C/C++ пользуются одной методичкой?

    Ну это стандартный маркетинговый булшит хайпующих растовиков-затейников. Видимо каких-то более user-visible фич у их крапа нет, приходится хотя-бы так.


     
  • 2.86, Lex (??), 07:15, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Более того, я сильно сомневаюсь, что товарисчщ сам движок( написанный не на расте ) на расте переписывал, а дыр в них, имхо, хватает
     
     
  • 3.102, Аноним (-), 03:15, 21/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Более того, я сильно сомневаюсь, что товарисчщ сам движок( написанный не на
    > расте ) на расте переписывал, а дыр в них, имхо, хватает

    JIT вообще сам по себе безопасность ощутимо снижает, потому что семантика W^X заведомо идет лесом.

     

  • 1.67, Wilem (?), 18:42, 18/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Сам-то на нормальном языке пишет, а другим жаваскрипт суёт. Норм устроился.
     
  • 1.89, Аноним (89), 09:39, 19/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ещё один велосипед. Как же утомил этот зоопарк саморазмножающихся фреймворков, языков, пакетных менеджеров, дистрибутивов и и.д.  Энтропия нарастает в геометрической прогрессии.

    Необходимо создавать движение борьбы с энтропией

     
     
  • 2.93, Аноним (93), 12:43, 19/02/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если вам очень томно в этой реальности, есть выход :)
     
  • 2.97, Аноним (34), 01:43, 20/02/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Как оно вам мешает?
    Опенсорс как-то себя навязывает?
     

  • 1.96, VITALI (?), 14:22, 19/02/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У джавы защищённость появилась хахаха
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру