LINUX.ORG.RU
ФорумTalks

JavaScript и его путь

 , , ,


0

2

Хм, да меня давно мучает этот вопрос.

Вот сабж Брендан А(Э)йк изначально разрабатывал для того, чтобы делать веб-сайты (веб странички) более живыми, динамичными, интерактивными и т.д. Ну что еще там было в бытность «моего» js — валидация форм на клиенте и все такое.

Нынче же, лично для меня, «Смешались в кучу кони, люди...». Уже на моей памяти было несколько диалектов сабжа с переводом в нативный js, емнип: Dart, TypeScript CoffeeScript, те,что поновее, вроде как фреймворки React.js, Vue.js, +еще десяток баззвордов. Насколько я понимаю, возможностей обычного Javascript не хватало для серьёзных фейсбучных проектов или это NIH-синдром?

В тоже самое время, появилась Нода и старалась выдать асинхронность за плохую конкурентность. Вроде как сам автор Ноды недавно завещал юзать Go для сурьёзных проектов.

Такой вот поток сознания... а теперь собственно вопрос: Есть ли у всех этих ECMAScript-комитетчиков и создателей нового Javascript хотя бы приблизительный план, что будет из себя представлять язык, скажем, через 5 лет?

Или просто будем натягивать сову на глобус пока не налезет?

Изобретать трансклюкаторы, трансплитеры, Бабелей, Натанзонов, вебпаки-для-макаки и over9000 новых библиотек, чтобы рендерить усё на клиенте, а на сервачке как всегда у хипстеров только данные и REST-API.

Я закончил.

Просто весь этот JS-бум уже в голове не укладывается.

★★★★★

Насколько я понимаю, возможностей обычного Javascript не хватало для серьёзных фейсбучных проектов или это NIH-синдром?

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

Deleted ()

Как был дрысней так и остался.

entefeed ☆☆☆ ()
Ответ на: комментарий от Deleted

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

10 лет назад на том же javascript.ru гордо писали, что у нас есть АОП, не то, что ваше ООП. У нас все круто!

Twissel ★★★★★ ()

Нынче же, лично для меня, «Смешались в кучу кони, люди...».

Это не единичный случай.

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

От монги любители классики тоже нынешней популярности не ожидали. Справедливо, кстати, учитывая кривизну кода (например реализацию индексов).

Иногда происходящее не поддается законам логики. Но с ним все равно надо считаться :)

Есть ли у всех этих ECMAScript-комитетчиков и создателей нового Javascript хотя бы приблизительный план, что будет из себя представлять язык, скажем, через 5 лет?

http://kangax.github.io/compat-table/esnext/ - я вроде кидал тебе ссылку на сайт, там есть вкладка про планы.

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

Да нет, прототипы это действительно очень странная хрень. Но есть нюанс. В очень многих случаях вместо ООП гораздо удобнее использовать миксины. И если ты будешь предлагать в качестве альтернативы язык где миксинов нет, то будешь послан совершенно справедливо. Что совершенно не значит что прототипы это хорошо.

Vit ★★★★★ ()

А если посмотреть в ретроспективе..

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

Все гуи, что были после имели и имеют финансовую подоплеку, а следовательно жестко привязаны к их создателям. Flash, WPF, Cocoa, IOS, Android.. Можно ли на них написать переносимое приложение? Почему?

Сейчас принято делать веб для десктопов и приложения для андроида и IOS. Что будет если выстрелит еще пара мобильных ОС? Будут писать по приложеньке на каждую?

Отвечая на твой вопрос. «Есть ли у всех этих ECMAScript-комитетчиков и создателей нового Javascript хотя бы приблизительный план, что будет из себя представлять язык, скажем, через 5 лет?».. А есть ли у них выбор? Корпорациям не выгодно делать универсальный язык для гуев. Эпл, например, открыла ядро, но за свой гуй будет держаться до конца. Майкрософт открыл .NET Core, но WPF ни за что не отдаст. У гугла был шанс сделать правильно, но вместо этого они взяли линукс и джаву и наваяли нечто в себе, ни с чем несовместимое.

Так кто будет делать прекрасный WEB будущего? Старейшины из W3C? Нет. Корпорации? Нет. Поэтому и дальше будем натягивать сову на глобус

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

я вроде кидал тебе ссылку на сайт, там есть вкладка про планы.

Кажись я на ту вкладку не смотрел. Гляну.

Twissel ★★★★★ ()

рендерить усё на клиенте, а на сервачке как всегда у хипстеров только данные и REST-API

Будто что плохое. Вот _как_ они это делают через 100 прокладок это треш и содомия, да. Хотя казалось бы, вот вам апи браузера, крутите данные как хотите. Зачем все эти напластования говна трудно понять.

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

Затем, что не существует проблем, которые не решить ещё одним слоем абстракции.

x3al ★★★★★ ()

Есть ли у всех этих ECMAScript-комитетчиков и создателей нового Javascript хотя бы приблизительный план, что будет из себя представлять язык, скажем, через 5 лет?

у браузеростроителей есть план на WebAsm. а там уже каждый в зависимости от религии будет писать на c++/go/rust/c#/swift. а js станет legacy

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

вот вам апи браузера, крутите данные как хотите

Связывать данные с их графическим представлением прогулкой по DOM-у CSS-селекторами жутко неудобно и многословно

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

у браузеростроителей есть план на WebAsm

Я так понимаю, WASM - это создать Uint8Array фиксированного размера и заниматься байто***черством используя этот массив вместо кучи (или стека). DOM, ровно как и все остальное с GC, так и останется на js

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

А Вы действительно в этом уверены?

Как говорит офтопик)))

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

каждый видит, что хочет.

Для меня это адекватный язык (в случае, например, c#) без callback-hell'a, где асинхронно выполняется только-то, что мне нужно, а многопоточность реализована не web-worker'ами, а потоками

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

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

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

Я не спорю, что начинание хорошее. Но не факт, что спека про работу с GC объектами из WASM, вообще появится. Может так случиться, что на своем «адекватном языке» сможешь только арифметические рассчеты написать, а остальное придется пилить на js

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

Связывать данные с их графическим представлением прогулкой по DOM-у CSS-селекторами жутко неудобно и многословно

Любые гуи многословны. Неудобно, ну может быть. Работа она всегда где-то жмет. А тут вебельщикам неудобно, они изгаляются, а страдают пользователи. Взять хоть фейсбук эталонный - эпичное вырвиглазие и тормоза. Зато фейспукерам удобно наверно, порадуемся за них.

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

Любые гуи многословны

А там где есть повторяющиеся конструкции - всегда появляется мужик с макросами. Будешь писать на браузерном АПИ - сам не заметишь, как обрастешь функциями-хелперами. Лучше не плодить сущностей и взять одну из (тысяч) готовых

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

в роадмапе есть и работа с DOM и взаимная интроспекция с js.

т.е. в идеале в старых проектах на js новый функционал можно будет писать уже на wasm

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

Если сделают - будет круто. Может лет через 10 появится браузер вовсе без js :)

makoven ★★★★★ ()

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

ddidwyll ★★ ()

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

Пока вот это вот говно под названием HTTP-сервер (или даже весь сетевой стек) не паерепроектируют во что то совеменное, жабаскрипт в области веба не сможет развиваться.

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

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

Не обязательно

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

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

Можно было бы экстраполироваться в область классической же диалектики вида: тезис<->антитезис —> синтез, но то уже перебор.

Twissel ★★★★★ ()

Через лет пять всё будет как раньше. Мало что реально нового появилось, а даже то что появилось мало используется. Ну классы там, чисто как сахарок, ну функции сокращённо, ну чуть чуть из новых веб стандартов что уж очень надо. А так в целом как было так и есть.

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

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

WebaAssembly доведут до юзабельного состояния. Это новая и годная тема.

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

Считаешь что js подходит для задачи - используешь, нет - не используешь

Не нравятся продукты на нём - не пользуешься.

не получается пока что брать и не использовать, понимаешь? любая малейшая динамика на клиенте окунает тебя в мир js'a

и даже обвёртки над js (типа coffee или dart) не устраняют недостатков js'a полностью

это не php/ruby/python, к которым действительно можно практически никогда не прикасаться, если они не нравятся

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

не получается <...> не использовать

Трактую как: профит (решенные задачи, з/п и т.д.) перевешивает нежелание пользоваться. С такой точки зрения жаловаться нет смысла. Думаю мало людей, кого насильно заставляют кодить, в том числе и на js.

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

обвёртки над js (типа coffee или dart) не устраняют недостатков js'a полность

Я вот думаю elm пощупать, да всё лень.

ddidwyll ★★ ()

Есть ли ... план

«План» работает, если кто-то думает, что знает, что происходит, сможет убедить в этом «остальных», и при этом его модель не сильно отличаются от «действительности». Последние 2 достаточно редко встречаются, и ещё реже совмещаются, т.ч. «план» не работает.

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

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

Допустим доведут, но использовать это будут с вероятностью в 99% чисто как вспомогательное средство для ускорения - тут кусок напишут на каком-нибудь C++ чтобы считала, там напишут чтобы рендерело и тд. А основная логика как была так и останется на js + html и не потому что все такие дураки и тд. А потому что всё равно так удобнее и дешевле.

ixrws ★★ ()

а чего там укладывать - у людей есть идеи они их проверяют. Какие-то идеи срабатывают и занимают какие-то ниши, но большинство идей как и везде идёт в /dev/null.

«годное выплывет, ненужно утонет» и всех делов.

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

Манкипатчинг - непостижимая штука.

Поправил.

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

мужик с макросами

А потом удивляются, почему в js нормальное ооп тащат

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

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

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

В общем, если js не успеет мтать нормальным к внедрению wasm, он умрет как кобол.

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

Представляешь какой вавилон начнется. Туча фреймворков как сейчас, помноженных на количество языков, компилируемых в WASM

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

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

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

По-моему пророческий ролик, да.

В каждой шутке есть доля шутки.

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

Я честно устал от лапши js и перешёл на ts в ide.
Там, где у меня в angularjs было повторное использование с помощью функций, стало наследование объекта. Красота.

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

Как он, кстати, в плане популярности? Есть ли у сообщества тенденция все на нем переписывать?

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

в основном биндинги клепают, сильного NIH-синдрома не замечено

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

Не знаю, я вне сообществ, пилю для себя. В одни руки что-либо на js сделать невозможно, если это не твой профиль. Td файлы на всё, что надо мне, есть. Похожесть (в плане абстракций) на питон и си-шарп есть. Жить можно.

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