LINUX.ORG.RU
ФорумTalks

Зачем Node.js ?

 


0

3

Читаю - читаю. Вроде всё здорово и хорошо, но зачем эти танцы с бубном для обычного сайта с посещаемостью 100 юзеров в день?

Или это для держателей хостинга?

Я понял что из-за асинхронности код не тормозит. Но код не тормозил у меня и до этого ни разу.

Зачем оно обычному пользователю и обычному программисту?

Спасибо

Перемещено leave из general

Ответ на: комментарий от uin

Обычному джаваскрипту с обычным js движком файловая система и шел недоступен ни для чтения, ни для записи с исполнением

Проблемы говнобраузеров, не умеющих в ActiveX.

Вот не выделывались бы маководы, линуксоиды и прочие маргиналы — хипстота клепала бы сейчас десктопщину на относительно легковесном HTA. А так страдайте теперь с Electron. Причём страдают уже и виндузятники за компанию, хотя они-то ни в чём не провинились. И виндузятники это маргиналам несомненно припомнят — надо лишь открыть им глаза на истоки проблемы.

придется замещающие элементы запиливать с ноля

Ну здрасьте, а на что же тогда огромная npm-помойка? Чем банальный Sequelize не угодил, например?

mertvoprog
()
Последнее исправление: mertvoprog (всего исправлений: 1)
Ответ на: комментарий от mertvoprog

А так страдайте теперь с Electron. Причём страдают уже и виндузятники за компанию

и в чем страдания заключаются? От VSCode все в восторге, например

Чем банальный Sequelize не угодил, например?

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

uin ★★★
()
Ответ на: комментарий от uin

От VSCode все в восторге

Кто, виндузятники? Зачем бы им это поделие? А вот от тех поделий, которые виндузятникам нужны (скайп, фигайп) все блюют.

bread
()
Ответ на: комментарий от bread

После макоси у меня вообще боль из за отсутствия некоторых приложений и говенности доступных линуксу аналогов, но объективно редактора лучше нет.
Единственное что в нем не завезли, это выделение блоком (но это есть в расширениях) и мультиистрока не так годно работает как в том же техмейт. В остальном во всем лучше, даже в скорости при том что техмейт на каком то жутко ядреном бусте накостылен, а второй на электроне.

uin ★★★
()
Ответ на: комментарий от uin

и в чем страдания заключаются?

В прожорливости и ненативном лукнфиле как минимум. При том, что у тех же культей получается быть лёгкими, нативными и при этом кроссплатформенными. Но смузихлёбы не осилили культи.

а пхп-шные либы то все уже знают

Кто, ньюфаги-то? И эти знания боком вылазят, когда олды начинают дёргать входные параметры и глобального скоупа вместо $_GET/$_POST или mysql_ юзать в 2#20-м.

встроенная бд

Бесполезная херня уровня жабовской H2, или как её там.

mertvoprog
()
Ответ на: комментарий от mertvoprog

Слушай ну ты бы хоть раз открыл его и все бы понял.
Он умет комитить в гит и выводить сравнение файлов как GitDesktop (тоже кстати на электроне) он умеет каким то образом инклюды парсить и подсвечивать функции и классы что они есть, то есть этакий функционал IDE без IDE, если я папку с кодом приложения открыл, поработал, потом вышел/закрыл, при повторном открытии эхтой папки он мне опять выведет как бы сессию закрытую какие на момент закрытия файлы были открыты, в какое место кода ты смотрел, так же он конкретные настройки проекта запоминает и все это записывается сюда же в папку с настройками проекта, чистый юниксвей и хорошо работает, не то что эпловское системное SavedApplicationState которое тупо состояние приложения снапшотит. Приложение должно само юзерданные снапшотить (если это необходимо) а на его состояние вообще насрать.

uin ★★★
()
Ответ на: комментарий от uin

Потому что ты путаешь теплое с мягким. JS это встраиваемый язык без срелств ввода вывода. Все библиотеки которые ты имел ввиду не имеют отношения к js, они часть окружения, куда js встроен для управления этим окружением. В частности indexeddb это часть спеецификаций webapi, как и воркеры например. Браузер из коробки реализует и то и другое, а нода например, только воркеры.

Короче говрря, это не имеет отношения к жс. Жс сам по себе даже hello worl тебе не напишет, потому что писать ему некуда.

mimico
()
Ответ на: комментарий от mimico

Жс сам по себе даже hello worl тебе не напишет, потому что писать ему некуда.

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

uin ★★★
()
Последнее исправление: uin (всего исправлений: 2)
Ответ на: комментарий от uin

Нельзя так сказать про любой язык. Потому что например ввод вывод большинства языков входит в их спецификации и соотвнтственно реализация обязана его реализовывать. В js это не так.

В том то и дело, что то о чем ты говоришь это нестандартная библиотека.

mimico
()
Последнее исправление: mimico (всего исправлений: 1)
Ответ на: комментарий от mimico

Куда си будет писать без stdio ? Что тогда у джаваскрипта вообще стандартная библиотека, если не вебапи?

uin ★★★
()
Ответ на: комментарий от uin

stdio - это часть стандартной библиотеки Си.

Что тогда у джаваскрипта вообще стандартная библиотека, если не вебапи?

То, что описано в спецификации языка. Это стандартные классы Object, String, Number, Boolean, Function, Array, Map, Set, WeakSet, WeakMap и так далее. http://ecma-international.org/ecma-262/10.0/

WebAPI это апи окружения. Если бы WebAPI были стандартной библиотекой js - то все реализации жс движков, были бы обязаны реализовать их.

Отношения WebAPI к js примено такое же, как отношение POSIX к Си, за тем исключением, что POSIX включает в себя стандартную библиотеку Си, а WebAPI в себя стандартную библиотеку js не включает.

Грубо говоря, тебе ни что не мешает заменить в браузере жс на питон или луа, и реализовать для этих яыков интерфейсы WebAPI (чтобы манипулировать, домом например, или работать с webgl), но при этом тебе не надо будет реализовывать для этих языков стандартные классы жс.

mimico
()
Последнее исправление: mimico (всего исправлений: 3)
Ответ на: комментарий от mimico

То, что описано в спецификации языка. Это стандартные классы Object, String, Number, Boolean, Function, Array, Map, Set, WeakSet, WeakMap и так далее. http://ecma-international.org/ecma-262/10.0/


Так а где сама библиотека то? Я stdio не случайно привел, это ведь функции для работы с вводом выводом реализованные поверх системы, а ты утверждаешь по сути си - это вот int, char**, struct и <string>,<math>,<stdlib> а вот там fopen printf итд это уже операционная система и другое.

Язык без обвязки в операционную систему, в браузерное окружение, во что угодно - бесполезен, это парализованное тело у которого мозг работает, а взаимодействовать с окружающим миром оно не может.

uin ★★★
()
Ответ на: комментарий от uin

Язык без обвязки в операционную систему, в браузерное окружение, во что угодно - бесполезен

Это называется встраиваемый язык.

Так а где сама библиотека то?

Я же тебе обясняю. нет у js никакой стандартной библиотеки сверх того, что описано в спеке. Это базовые классы, и методы работы с ними. Это и есть стандартная библиотека. Ввода вывода нет.

У твое Си же напротив - стандартная библиотека есть, и она описсана в стандарте языка (потому и стандартная).

а вот там fopen printf

Интерфейс этих функций описан в стандарте языка Си. Неважно кто его реализует. На то он и стандарт, что его кто-то должен реализовать.

У js нет такого в стандарте. WebAPI это не стандарт языка js. Это POSIX от веба.

mimico
()
Ответ на: комментарий от uin

Асинхронность это thread-safe многопоточность.

Скорее многопоточность для бедных, но в любом случае она не помогает не тормозить.

ya-betmen ★★★★★
()
Ответ на: комментарий от mimico

Так js это и есть язык для вебапи, для стека технологий - js+css+html, экмаскрипт это вообще какой то чисто прописной базовый стандарт для построения создания своих языков - qml например

uin ★★★
()
Ответ на: комментарий от uin

js это реализация ecmascript, а webapi к js не привязано вообще. у всех webapi есть обычные IDL реализовать которые ты можешь на любом языке.

алсо, с момента своего повяления js использовался внебраузерного контекста, где никакого html и css и в помине не было. netscape его буквально сразу стали использовать на серверах.

qml например

как и action script опираются на ecmascript но не реализуют его. это из области си подобности. js си подобен - но он не си. qml - es подобен, но оне не es.

mimico
()
Ответ на: комментарий от ya-betmen

многопоточность для бедных


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

она не помогает не тормозить.

Она помогает тормозить элегантно - окошко выдало мгновенно, а отдельные поля по мере готовности. То есть когда выполнение одного не блокирует выполнение другого.

uin ★★★
()
Ответ на: комментарий от uin

«Не тормозит» это когда окошко появляется сразу со всеми полями.

ya-betmen ★★★★★
()
Ответ на: комментарий от mertvoprog

нынешними тенденциями

Нет.

Бузить «индейцы» могут на деньги ... ну типа некого теневого олигарха.

Контролируемый бунт «индейцев» прекрасно предсказан в 3 сезоне «Мира Дикого Запада».

Так, что не стройте из себя мамкиного диванного аналитика-геополитика, а лучше учите востребованные на рынке технологии.

Bioreactor ★★★★★
()
Ответ на: комментарий от miltorg

Трамп - это не состоятельный человек, а клоун, который корчит из себя «крутого».

Прототип Биффа из «Назад в будущее».

До определенного времени этот комик устраивал «Уолл-Стрит»(ТМ), но сейчас руками «индейцев» ему решили показать его истинное место.

Состоятельный человек - это тот, кто слева на фотке, а не справа

https://3dnews.ru/assets/external/illustrations/2019/11/13/997546/sm.01.750.jpg

Bioreactor ★★★★★
()
Ответ на: комментарий от mertvoprog

Вот как раз таки

В прожорливости и ненативном лукнфиле

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

Princesska ★★★★
()
Ответ на: комментарий от uin

Он умет комитить в гит и выводить сравнение файлов как GitDesktop

Зачем это в редакторе, когда есть собственно git и meld/kdiff/vimdiff?

он умеет каким то образом инклюды парсить и подсвечивать функции и классы что они есть

Языкоспецифичные плюшки.

то есть этакий функционал IDE без IDE

Так не бывает ;) Это просто недо-IDE, которую маркетолухи обозвали редактором.

выведет как бы сессию

:help sessions. Плюгинчиками даже автосохранение сделать можно.

конкретные настройки проекта запоминает

Для этого .editorconfig есть, а пользователеспецифичные настройки — зло.

чистый юниксвей

Тут да, всходовцы много сделали для продвижения LSP/DAP и закапывания монолитных IDE ;)

Приложение должно само юзерданные снапшотить (если это необходимо)

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

mertvoprog
()
Ответ на: комментарий от Bioreactor

Бузить «индейцы» могут на деньги … ну типа некого теневого олигарха.

Вылезайте из прошлого века, олигархи для этого не нужны, есть краудфандинг. Вы явно не видали в 2014-м VK-групп, где собирали средства на всякие антимайданы.

а лучше учите востребованные на рынке технологии

Про Blue Ocean Strategy Вы не в курсе, ясненько ;) Как раз попсовых технологий и стоит сторониться, они слишком притягивают внимание вайтишников. А где вайтишники — там конкуренция и демпинг.

mertvoprog
()
Ответ на: комментарий от Princesska

культи дают фору любому тулкиту, который есть под онтопик

Имплая, что электрон — не тулкит. Что в целом верно, ибо просто тулкитом эту самодостаточную штуку назвать сложно.

живых культях как абсолютном лидере в области нанятых формошлёпов

Пруф.

mertvoprog
()
Ответ на: комментарий от uin

то есть этакий функционал IDE без IDE

Счас меня тут тапками закидают, но eclipse с отключённой орфографией лёгок, быстр, IDE и платформа разработки с кучей всего. И да, UI лагает меньше электронов.

Shadow ★★★★★
()
Последнее исправление: Shadow (всего исправлений: 1)
Ответ на: комментарий от Princesska

Вакансии

https://jobs.dou.ua/vacancies/?search=qt&descr=1 — 15 результатов

https://jobs.dou.ua/vacancies/?search=electron&descr=1 — 14 результатов

https://www.indeed.com/q-qt-jobs.html — 620 результатов

https://www.indeed.com/q-electron-jobs.html — 1351 результат

https://stackoverflow.com/jobs?q=qt — 5 результатов

https://stackoverflow.com/jobs?q=electron — 39 результатов

Srsly? I’m a pony? La-la-la, talking’s so cool.

QT – худшее, что можно предложить из настольных тулкитов.

Культи отлично умеют мимикрировать под GTK+, например. Даже лучше, чем XUL.

mertvoprog
()
Ответ на: комментарий от mertvoprog

Вот скажи, ты специально это делаешь, или как?

https://www.indeed.com/q-electron-jobs.html — 1351 результат

Очень крутая выдача вакансий по Electron!

  • Electron Microscopist
  • Post Doctorate RA - TEM of Energy Materials
  • Ceramics / Materials Engineer

https://jobs.dou.ua/vacancies/?search=electron&descr=1

Стоит отдать должное, их украинские коллеги достигли бóльших успехов:

  • PHP (Symfony) developer
  • Intermediate/Senior Business Analyst
  • CTO for CobbleStone (relocation to Dubai)

По запросам «разработчик Qt» и «разработчик Electron JavaScript» на хедхантере разница в десять раз в пользу Qt.

Культи отлично умеют мимикрировать под GTK+, например.

Кроме моей свежей инсталляции мейнстримного дистрибутива. Очень крутое мимикрирование! Кстати, когда снова бинды из Xmodmap починят?

I’m a pony? La-la-la, talking’s so cool

Снимаю все претензии!

Princesska ★★★★
()
Ответ на: комментарий от Princesska

Очень крутая выдача вакансий по Electron!

Действительно. Отфильтруйте лучше.

на хедхантере

Местная специфика. Вы бы ещё 1С-ом аргументировали. Да и нищета постсовка пока сдерживает на нём распространение электроноговна. Оно на типичном зачуханном пеньке из госконторы и не запустится даже.

свежей инсталляции мейнстримного дистрибутива

Проблемы кривых дистрибутивов. Вон в бубунте единый вид из коробки обеспечили.

Кстати, когда снова бинды из Xmodmap починят?

А что с ними?

mertvoprog
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.