Pull to refresh
-1
0
Send message
Сущий изврат- я лучше, как программист, буду писать код, чем какие-то эмодзи в погоне за символами и очередным хайпом…
Не удивительно что вы ничего не поняли.

Конечно не удивительно. При чем там «утилита командной строки» и к какому это модулю node отсылка? Вообще не вижу смысла в таком наборе слов :) Ладно пусть то интерпретатор командной строки, но все еще при чем тут это в контексте модулей fs и zlib…
Так вот обертка изменяет и расширяет исходный объект будь то класс или функция то что вы дальше описываете это интерфейс.

Эх, ну так и правильно, даже если включать режим паттерннаци, и не обобщать все простонародной «оберткой» (ведь это очень важно в этом треде), а говорить о паттерне обретка. Модуль верхнего уровня на js расширяет и изменяет api и далеко не весь api встроенных модулей реализован на с++ и прокинут только интерфейс на него в VM, ничего больше. На с++ реализовано только низкоуровневые части, куча api написано в нем на js, то каким боком эта часть на js будет интерфейсом, а не оберткой по отношению к субмодулю на с++? Был бы то интерфейс, то никакого дополнительный функционала в js модуле не было реализовано. Будем открывать js модуль того же fs с репозитория node? Наличие надстроек над API, импортируемого из с++ субмодуля, и всяких хелперов уже никак по позволяет это назвать интерфейсом и как раз попадает под ваше «обертка изменяет и расширяет исходный объект».
Ну вот как это уживается?
Так вот обертка изменяет и расширяет исходный объект

это JS обертка с расширением некритичного API

Так это и есть интерфейс. Но вы почему-то упорно называете его оберткой.

С модуль который обворачивает zlib

Чудесно, но что там обворачивает с++ модуль неважно, это внешняя third-party dll и вообще предмета спора не касается. Непонятно чего Вы в этот zlib вцепились.
И да, называть это js оберткой наД С++ [модулем], во-первых, крайне неграмотно

Да ну? Ну тогда открываем (https://github.com/nodejs/node/blob/master/lib/fs.js) и смотрим что это такое обертка или интерфейс…
потом еще и спорить — это крайне глупо.

Согласен ;)
Интерфейс к утилите командной строки?! Нет?

Чито? Ничего не понял… котопес какой то…
Нет? С каких это пор JS умеет нативно исполнять C код?

Не знаю, где Вы такое там прочитали? JS это реализация ECMAScript, как язык вообще что то может исполнять, если на то пошло, еще и «нативно»? И как С код в принципе может исполняться нативно, т.е без компиляции в байткод?
Если бы вы сказали С++ wrapper я бы еще промолчал.

Нет, системные модули это JS обертка с расширением некритичного API над native модулями, написанных на C++. Без понятия при чем тут с++ оберткаи над чем там она должна быть…
document.getElementById('button').addEventListener('click', () => {
console.log('clicked!');
});


Это не конструкции языка, это api DOM и BOM, который браузер реализует для JS движка. JS ничего сам по себе не знает ни о document, ни о readFileSync это все внешнее API платформы, в среду которой он интегрирован. В Ioniс и Electron будут доступные другие API, но язык и движок тот самый.
Node.js это платформа= движок JS V8 + окружение встроенных модулей на c++ и их js оберток. По отношению к движку JS это внешнее API и потому уж никак не может быть расширением языка. Commonjs просто соглашение, он не являеться стандартом и имеет кучу реализаций, вот и node предоставляет свою реализацию, то есть это api платформы как и прочие встроенные модули node и никакого отношению к языку не имеет.
Всем нужен SPA и только на 3-ке этих фреймворков, так что на практике обязательно выходит :)
Интересно, что судя по графику 40% собираются не использовать SPA фреймвок, хотя реальность такова что все вакансии используют один из Angular/React/Vue, даже старичка backbone в них нету… странные данные опроса :) Вряд ли сейчас есть хоть одна вакансия клиентского js без этой тройки фреймворков.

Information

Rating
Does not participate
Registered
Activity