Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, gandjustas, Вы писали:
G>>Разница в том, что в .NET очень много всего входит в стандартную библиотеку, в том числе UI. В JS в стандарт не входит почти ничего и около десятка ui-фреймворков существует и около сотни всяких байндингов одного к другому. Естественно при таком количестве внешних зависимостей они будут отваливаться. G>>Ровно ту же самую картину можно наблюдать в python.
V>Так и в чем прикол продолжать есть кактус?
Скорость написания деплоя все равно выше. А подобные неудобства по сути одноразовые. Один раз проблему фиксишь и все.
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, gandjustas, Вы писали:
G>>Во-вторых среди ищущих замену подавляющее большинство тех, кто JS не знает. G>>В-третьих найти грамотного программиста — проблема не зависимо от языка.
V>Увы. Я одно время плотно разрабатывал под Офис, общался на форумах с VB-программистами. V>Так вот, средний уровень программиста от языка зависит напрямую. V>Там был местами просто ужос! )) V>И эти люди вполне себе приносят некую пользу на своих проектах, почти всегда не понимая до конца, как "оно" устроено и работает.
Это хорошо или плохо? Пользу то приносят, вроде хорошо. Не понимают чего-то, ну и ладно, денег меньше будут хотеть. Если их это устраивает, то меня тем более.
V>А если программист начинает что-то понимать, то он обычно уходит на другие языки. V>Аналогично с JS.
Не аналогично
V>Например, я не раз наблюдал примерно такую деэволюцию у коллег: Дельфи -> Джава/C# -> JS (распространённый сценарий, кста).
Это путь роста продуктивности и кроссплатформенности.
V>Но никогда не JS -> Джава/C# -> С++. ))
Это путь падения продуктивности. Никто в здравом уме не станет решать задачу на C++ и даже на C#, если может её же решить на JS. За исключением случаев готовых решений на нужном языке.
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, gandjustas, Вы писали:
G>>Факты, сестра, факты! В этой теме еще никто не привел конкретного факта почему именно JS плох.
V>Гугл проводит ежегодные конференции на тему того, почему JS плох и почему Гугл отказыватся во внутренних ключевых своих разработках от JS.
Ага, и пилит v8 движок, который собственно и дал развитие современному JS
V>Тебе сколько видео с конференций гугла на эту тему накидать? 10? 20? Ты ни одного доклада не смотрел/не читал? ))
Все смотрел и читал. Гугл пытается всем продать dart, чтобы доминировать в браузерах.
G>>В современном стандарте есть import и arrow functions, в стандарте 2015 года появились. А примерно с 2014 были доступны в TS. Фактически 3 уже года можно использовать.
V>Нельзя. Потому что совместимость. Т.е. если еще в каком-нить node.js можно, то на веб-страницах — нет.
Опаньки, а как я это делал 3 года назад? Именно классы и arrow functions...
Внезапно TS умеет компилять из в es3.
Все можно если хотеть, а не брызгать слюной на форуме какой JS плохой.
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, gandjustas, Вы писали:
G>>Это ты пошутил так, да? Java взлетела именно потому что вытеснила C\C++ в банкинге и трейдинге,
V>Брехня же. Java сначала вытеснила VB в корпоративе, а не С/С++.
VB всегда был для клиентских приложений , пока MS его не похоронил. А Java пробралась на сервера и выкинула оттуда C++.
V>До прихода джавы в трейдинг было еще целых 8-10 лет, потому что там ограничением было быстродействие серваков на джаве.
Это ты про HFT говоришь, а трейдинг далеко не только HFT.
G>>а в дальнейшем во всем остальном сервер-сайде. Это случилось в районе начала-середины 90-х.
V>И опять брехня. Джава взлетела сначала на некритичном сервер-сайде в конце 90-х. И только в начале 2000-х её стали брать на что-то критичное.
Хз о чем ты. Знаю один банк, туда java влезла в 96 и отжала все. в 2005 пытались переписать, но чета не осилили.
V>Потому что до стандарта Джавы-2 это был дырявый матрас, а не "защищённая среда". Первый стандарт Джава-2 вышел в 99-м году, но до версии 1.3 (2000-й год) на что-то серьёзное Джаву никто не брал. Банковские джава-апплеты более-менее широко распространились как раз после выхода Джава-2.
В 2001 джава уже захватила все что можно было, а начался процесс сильно раньше.
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, gandjustas, Вы писали:
V>>>Для сравнения, Хаскель до сих пор живее всех живых и переживёт любое г-но типа JS многократно, ес-но. G>>Улыбнуло. Есть подозрение, что за все время существования хаскела на нем написано меньше кода, чем пишется ежегодно (может даже ежемесячно) на JS.
V>Я тебе больше скажу. Во времена бешеной популярности Перла на нём тоже писалось больше строк, чем на Хаскеле. V>И где теперь этот Перл, а где Хаскель?
Что-то мне кажется что и до сих пор на перле пишется больше. И перл и хаскел — очень нишевые языки.
V>>>В рамках JS не изобретено ни одной идиомы. G>>Ты не знаешь JS. V>Я знаю его намного лучше тебя.
Я тебя расстрою, но нет. Ты это показываешь каждым сообщением.
TSP>>>Все эти слои имеют недостатки, которые всё равно не получится игнорировать. G>>Какие именно недостатки? TSP>Отладка через одно место, трудности профилирования, горы загружаемых зависимостей, расход памяти браузером и многое многое другое.
Что ты имеешь ввиду? Какие сложности отладкой? Брекпоинты в f12-tools есть, watch есть, stacktrace есть, даже асинхронный если хочется. Sourcemaps помогают отлаживать исходный код, а не скомпилированный.
С профилированием то же самое. Да и по сути профилирование в браузере сводиться к профилированию перестроения dom, reflow и прочих неприятностей, не связанных с кодом.
TSP>>>Я бы не сказал что он развитый. Я про ES5, про то что есть сейчас. Не про светлое будущее. G>>Мало ли что бы ты сказал. Ты не сильно в теме, твое мнение не авторитет. TSP>Давай ссылки на авторитетов, которых чтишь и любишь. Я с удовольствием почитаю.
Почитай JavaScript Good Parts.
TSP>>>С точки зрения результата(продукта) не важно что там хромает. Должно работать. G>>См выше про "должно". TSP>У тебя проблемы с этим словом?
У меня — нет. Это ты его употребляешь по три раза в сообщении.
Здравствуйте, TimurSPB, Вы писали:
TSP><script src="/path/to/script.js"></script> не считается, т.к. это не часть JS а html А что еще не считается? Давай все запишем
TSP>requrejs это вообще убожество, сделанное из за трудностей обусловленных языком.
Да-да, опять "убожество" и "трудности".
Объясни в чем трудности
requirejs(["helper/util"], function(util) {
//This function is called when scripts/helper/util.js is loaded.
//If util.js calls define(), then this function is not fired until
//util's dependencies have loaded, and the util argument will hold
//the module value for "helper/util".
});
TSP>>>Конечно, я не писал все семь лет на нём, но много опыта не надо, что бы увидеть очевидные проблемы. G>>очевидные проблемы похоже существуют в твоей голове. TSP>В моей голове всё в порядке. Просто надо критично смотреть на вещи и называть их своими именами, даже если у кого то подгорает.
Видимо подгорает у тебя, так как ты используешь эмоциональные оценки и никаких фактов. Все что ты пытаешься назвать проблемами решено уже очень давно.
G>>>>Потому что кроме браузеров есть NodeJS и куча производных от него вещей. А еще есть компиляторы, которые адаптируют код для браузеров без поддержки возможностей. G>>>>Внезапно оказалось что почти все нововведения могут быть реализованы небольшой генерацией кода. (это к вопросу о мощности языка) TSP>>>Node.js имеет многое из коробки и программирование на нем отличается от фронтенда. Мы говорим о том, что исполняется в браузере. G>>Что например? Чем отличается? TSP>Доступом к файловой системе, встроенной системой модулей как минимум.
А тебе в браузере нужен доступ к файловой системе?
Тебе кто-то мешает в браузерном коде использовать систему модулей (которая в браузере заменятся небольшой кодогенерацией)?
TSP>>>В комитете по плюсам есть свои проблемы, но это не имеет отношения к JS G>>Комитет по плюсам работает на несколько порядков медленнее комитета по JS. TSP>Там и легаси на несколько порядков больше и требование к совместимости и много чего ещё.
Нет, в комитете С++ слишком много противоположных взглядов.
G>>Была в C++ дыра с умными указателями. В итоге smart_ptr включили в стандарт. TSP>Не было там никогда дыры с умными указателями. Тогда зачем их добавили в стандарт?
TSP>Дыра это когда нет человеческого доступа к DOM и как результат, код вида "... (document).ready(function() {$('#IDDIV').draggable({' ... "
Это уже не вчерашний, а позавчерашний день. Сегодня можно (и нужно) писать так:
<div dragable>...</div>
Более того, изначально предполагалось что связка HTML+CSS+JS именно так и будет работать. Но лихие девяностые с браузерными войнами подпортили картину.
G>>Так это проблема человека, а не тулов. TSP>И человека и тулов. В каждом случае с разным соотношением.
Давай конкретику. Про тулы, не про людей.
G>>Первые версии ng опирались на jq. Потом jq выпилили, но чтобы не переделывать код сделали свою затычку для некоторых jq api. Так что jqlite это не урезанная версия jq, а просто имитация части api. TSP>имитация части api это зашквар вообще.
А ты бы чего предложил? Переписать половину ангуляра, наплодив кучу ошибок?
Здравствуйте, TimurSPB, Вы писали:
TSP>>>Что бы убедится что всё это странно. Делать из текста текст, который потом движком V8 переводится в байт-код, который потом выполняется на интерпретаторе. I>>И это нормально. TSP>Это не нормально.
И что здесь ненормального ? Это разновидность байткода.
TSP>>>Как отлаживаться и профилироваться в такой цепочке — это вообще отдельная индустрия костылестроения. I>>Так же, как и в любом другом ЯП. TSP>Не так же. Отлаживается уже транслированный, а не исходный текст.
Правильно. И в JS ровно так же. Никто в своём уме .min.js не отлаживает. Ну разве что ты такой особенный
Здравствуйте, Somescout, Вы писали:
I>>Это и есть пример. А вопрос для того, что бы ты сам подумал. Система типов JS VM резко отличная от JVM. Соответственно есть два варианта решения — поддержка этих типов в gwt или же эмуляция. Надо объяснять, что в джаве первый вариант недоступен принципиально ? А вот из за эмуляции ты и огребаешь проблемы, потому как полностью заткнуть дыры джавой ну никак не получится.
S>Это не пример, это ваши теоретизирования на тему почему оно должно работать плохо. Вы покажите исходный код, во что он транслировался и почему это не оптимально.
Теоретизирования у тебя, а здесь факты. Разъяснения в доке gwt, черным по белому.
I>>Не нравятся — это вкусовщина, а не аргумент. S>На любом языке, насколько бы плох он не был, можно писать. Соответственно про любой аргумент за и против любого языка можно сказать что это "вкусовщина". Но в случае с js слишком много неочевидного поведения, чтобы считать это вкусовщиной.
S>>>Классика I>>Это никак не мешает писать код Такие вещи только на форумах и встречаются. S>И в отладке, когда пытаешься выяснить с чего вдруг этот оно криво ведёт себя в данной ситуации.
Скажи честно, как часто ты пишешь код вида a = a или a === a ? Ну, в твоём любимом ЯП. Интересует статистика. Если ты такое пишешь каждый день, то конечно, все меняет.
Представь себе, JS это самый популярный язык. Миллионы людей каждый день отлаживает код. Вещи которые ты привел, в продакшне практичеки не встречаются.
Ну мало идиотов писать a = a или a === a. Нормальная логика пишется гораздо легче плюсов, джавы или C#.
Здравствуйте, Somescout, Вы писали:
S>>>А что не так? В одном случае фрэймворк браузер, в другом COM + MSOffice. Ситуация более чем схожая.
I>>Браузер есть по дефолту в любой взрослой ОС. ОФис еще покупать надо, а COM — только на винде и то не любой. S>Изначально как звучал вопрос — "покажите код на 30 или меньше строк", а теперь, внезапно, добавились новые требования. Изворачиваетесь.
Ты не в состоянии проанализировать свойства своего решения ? Браво!
I>>Например твой код в макоси не заработает. И в андроиде/иосе не заработает. А JS вариант заработает везде и сразу S>А в nodejs? А без браузера? А в старых версиях браузеров?
Твой вариант сливает в любом случае, у него единственная возможность запуститься, когда юзер купил офис и пермишны позволяют запустить Эксель. Это смешное количество юзкейсов. На всех остальных у него ни единого шанса. А вот вариант в 30 строчек кода работает уже давненько.
Здравствуйте, novitk, Вы писали:
I>>JS к твоему сведению легко пролез чуть не везде. NodeJS тоже думаешь благодаря DOM взлетел ? N>NodeJS взлетел исключительно потому, что код относительно легко можно переместить между клиентом и сервером. "Один язык" это суперфича. С точки зрения серверной платформы Python/Ruby/JVM/.NET уделывает NodeJS и в хвост и в гриву.
Фишка нода прежде всего JS и его потоковая модель. Даже если ты разные языки в проекте используешь, все равно есть куча преимуществ.
I>>А встраиваемый скриптинг ? JS сейчас по факту есть вообще везде, его даже в микроконтроллеры встроили. N>По тем же причинам по которым там часто берут LUA. Язык известный, компактный, с хорошими бесплатными реализациями.
И что с того ? Это как то отменяет, что JS проникает куда попало ?
I>>JS это очень гибкая объектная модель, функциональное программирование и все это с очень достойной производительностью. N>Только по сравнению с VB6. По сравнение с тем же Питоном, JS это неудобное, невыразительное и глюкавое г..о.
Питон по сравнению с JS убогий тормоз. В ём либы более развитые, в силу того, что питону лет двадцать. JS на сервере совсем недавно появился, так что дело времени.
Здравствуйте, vdimas, Вы писали:
I>>С браузером будет ровно так же. Браузер — это платформа. Не важно, кривая она или нет. Важно, что на неё есть спрос. Переписывать никто не будет. И JS менять, потому что это не нравится некоторым девелоперам, тоже не будут.
V>Будут. V>Уже меняют твой JS нафик.
Да, ты крутой!
V>Ему не оставили в ближайшем будущем места. V>Более того, идёт отказ от DOM. V>Потому что модель DOM — это тоже устаревшая тупая хрень, ограничивающая всё, что только можно ограничить. DOM был нужен исключительно и только для JS.
Ого, какой ты крутой!
I>>Потому языки или принимают правила платформы, или идут нахрен, как это было во все времена.
V>Ерунда полная. V>"Платформа" — это не объективное явление природы, а субъективная хрень, творение рук человеческих. V>Как пришла, так и умрёт.
Вау, ты еще круче!
V>Через 15 лет интернет не будет таким как сейчас. V>И роль JS будет не больше, чем роль языка Perl сегодня — тоже бывшего когда-то основного скриптового языка. Но сейчас этого перла ровно ноль, считай.
Здравствуйте, gandjustas, Вы писали:
AK>>С браузерами всё печальнее. Если вы сделаете новый крутой язык, который будет работать, например, только в браузере Opera, то этим языком пользоваться никто не будет. Нужна будет поддержка всего того же диапазона браузеров и платформ, который есть у JS и именно это и было бы проблемой для любого нового браузерного языка. А вовсе не какие-то волшебные фичи JS. G>Не рпоблема, делай компиляцию языка в JS. По этому пути пошли все... И никто не дошел.
1) Потому что компиляцией чего бы то ни было в JS занимались не те люди, которые в конечном итоге использовали бы эту компиляцию. Есть большая разница между инженером в гугле и оборотистым барыгой от айти, который веб-морды пишет для какой-нибудь прости господи фабрики по производству некондиционных российских кондитерских изделий.
2) Те люди, которые способны писать компиляторы, не будут делать закруглённые уголки для Очень Ценного Заказчика которому надо Вот Прям Щас за Три Копейки. Это разные типы работы и разные типы психики. Специалист по скоростному перелопачиванию фекалий для идиотских хотелок просто просто физически неспособен заниматься вещами действительно сложными. И это разная сложность — запомнить тонкости кривой реализации CSS и селекторов для десятка разных браузеров, или же дорабатывать трансляторы с одного языка на другой. Большая часть веба — это говнокод, причём не имеющий вообще никакого смысла, кроме того, что за него заплатил инвестор-заказчик-клиент, заплатил по разным причинам — например, ему бюджет потратить надо. Есть знания талмудические, есть знания выводимые логически. Весь веб — это талмудизм.
3) Для точной и безупречной работы компилятора требуется точная и безупречная работа программиста. Требуется въедливость, занудная логика и предусматривание всех возможных ситуаций. Аджайлом компиляторы не пишутся. За месяц они не пишутся. В опенспейсе они не пишутся. Да что там — компиляторы, даже WSDL для JS и PHP эта публика реализовать оказалась не в состоянии.
4) Вся масса программистов веба, JS и тому подобных отраслей, где требуется повышенная гибкость позвоночника — "клиент всегда прав", также будет не в состоянии разрабатывать софт для медицинской техники, для промышленного оборудования, для индустриальных и промышленных роботов. Там, где появляются требования к безопасности и предсказуемости, сразу же вся гибкость, аджайл, высокая скорость накидывания программного каркаса, который будет работать в 20% случаев — всё это исчезает. Нам грядущее пришествие робототехники обещают из каждого утюга, но как-то никто не говорит о том, кто же будет писать программы для всего этого? Если у нас 50 млн программистов, и 95% из них большую часть всей своей жизни делают ненужную и ненадёжную дрянь?
5) А весь нынешний веб — это именно гибкость, и между прочим, её создали сами же разработчики, прогибаясь под желания мелкого заказчика (см. анекдот про "и мне масла в жопу на штуку грина") и делая костыли, которые работают под Эту Конкретную Очень Важную Хотелку, но не работают в общем случае. SQL таким способом никогда не появился бы. Тысяча проворных обезьян его не напишут. А компилятор чего бы то ни было в JS на стороне клиента должен взаимодействовать со сторонним кодом на JS, и это сразу же уменьшает ценность компилятора — всё равно же на JS писать придётся. Вдобавок, вменяемых IDE для подобной смеси языков как не было, так и нет, да и зачем их создавать, если старательные обезьянки и в блокноте неплохо работают.
6) Классические компиляторы в машинный код ориентируются на стабильно работающие процессоры, модели которых не меняются десятилетиями, а не на браузеры с кучей багов, которые вдобавок еще и обновляются каждую неделю. Всё равно что-то не будет работать в этом client-side болоте, так зачем стараться, когда можно писать сразу на JS? Если бы в самой среде веб-разработки было принято дружно слать Заказчика в баню, когда он хочет непредусмотренного, то и компиляторы в JS бы пригодились. Если бы у нас был неизменный IE 6 с самого момента его рождения, то для этой стабильной среды давно бы уже появились более удобные средства разработки, чем JS.
7) В классической инженерии, если вы купили машинку и воткнули её в розетку, а у вас там ток не той системы, и машинка сгорела — то это вы сам идиот, и виноваты вы, ваша розетка и ваше нежелание привести инфраструктуру в порядок. А в вебе — не так. Не работает сайт на китайском смартфоне у васи — ай, какая беда, надо срочно подкорёжить сайт под васю. Но, никто не будет корёжить бетонные плиты под васю. Ток в 180 вольт под васю генерировать не будут. В классической инженерии вася с его цветущим разнообразием пожеланий идёт в жопу, где ему самое место. Можно построить треугольный дом, и даже спиральный, но строят как-то больше прямоугольные. Хочет вася особенного — платит деньги, и не просто платит, а очень много. И то, васе можно не всё, за его желаниями бдят органы вроде Котлонадзора.
8) Люди, способные справиться с цветущим разнообразием тараканов в голове Заказчика, не могут быть создателями чего-то надёжного (а компилятор — это надёжность). Потому что надёжность — это прежде всего ограничение, выявление и отсечение возможностей — "тут мы можем от сих до сих, а тут у нас глухая чугунная стенка, не нравится — побейтесь в неё лбом, может и пробьёте". Типичный Заказчик же для веба смотрит на веб, как на работу дизайнера, "поиграйте шрифтами". Шрифтами ему поиграют, да. Выполнят всё, что он хочет. И в телефон ему трояна засунут, через дырявый браузер, созданный под удовлетворение желаний таких, как он.
Здравствуйте, mgu, Вы писали:
F>>эм, js выбрали потому, что разработчики тупые? ~_^
mgu>Это так ваша знакомая блондинка ответила? Типа, я вышла замуж за Васю, т. к. я тупая?
Согласитесь, что некоторые блондинки, а также брюнетки, иногда в приступе откровенности могут сказать "Да, я вышла замуж за этого урода потому, что я была дурой". И это будет чистой правдой.
Здравствуйте, velkin, Вы писали:
V>Мой опыт говорит, что .NET это windows only, а любая попытка запустить его в GNU/Linux оборачивается такими проблемами, что проще перейти на что-то другое.
Я лазил в Mono по библиотекам XML. Такое ощущуение, что успели реализовать только самую популярную функциональность. Чуть в сторону — уже не работает.
Интересно, как с этим в .Net Core.
Здравствуйте, gandjustas, Вы писали:
V>>>>В рамках JS не изобретено ни одной идиомы. G>>>Ты не знаешь JS. V>>Я знаю его намного лучше тебя. G>Я тебя расстрою, но нет. Ты это показываешь каждым сообщением.
Ну что тебе мешает показать мои ошибки?
Ля-ля — не мешки ворочать? ))
Здравствуйте, gandjustas, Вы писали:
V>>Брехня же. Java сначала вытеснила VB в корпоративе, а не С/С++. G>VB всегда был для клиентских приложений , пока MS его не похоронил.
VB в интранете прекрасно работал и на серверной стороне.
Похоже, ты страшно далёк от этой темы.
Курить DCOM — он целиком и полностью, считай, был заточен под компоненты VB.
G>А Java пробралась на сервера и выкинула оттуда C++.
Да никого она оттуда не выкидывала. 3-хуровневых приложений тогда толком еще не было, кроме специализированных систем управления предприятием (ERP), коих было мало. И то, никого из крупных Джава никуда не выкинула. А мелкие системы сплошняком были клиент-серверные, т.е. клиент обращался непосредственно к базе. И в этом месте Джава тоже никакой С++ никуда не выкинула, бо мейнстримом для этих вещей был VB и Дельфи.
V>>До прихода джавы в трейдинг было еще целых 8-10 лет, потому что там ограничением было быстродействие серваков на джаве. G>Это ты про HFT говоришь, а трейдинг далеко не только HFT.
Биржевой трейдинг? — только. Все крупные биржи тогда как были на сях (без плюсов), так и остались.
На Джаве у них стало прибавляться утилитного/обслуживающего софта, разве что.
Собсно, вот только в конце 2000-х пошли первые попытки делать биржи целиком на Джаве и то, последние годы идёт откат — на джава-движках остались совсем мелкие биржи.
V>>Джава взлетела сначала на некритичном сервер-сайде в конце 90-х. И только в начале 2000-х её стали брать на что-то критичное. G>Хз о чем ты. Знаю один банк, туда java влезла в 96 и отжала все. в 2005 пытались переписать, но чета не осилили.
Не повезло банку. ))
Тогда у нас этих банков было как собак не резанных.
Но тот же Парус, 1С — это всё нейтивные системы.
А на чем были писаны первые Axapta и Navision, кста?
V>>Потому что до стандарта Джавы-2 это был дырявый матрас, а не "защищённая среда". Первый стандарт Джава-2 вышел в 99-м году, но до версии 1.3 (2000-й год) на что-то серьёзное Джаву никто не брал. Банковские джава-апплеты более-менее широко распространились как раз после выхода Джава-2. G>В 2001 джава уже захватила все что можно было, а начался процесс сильно раньше.
На ней стали писать новый заказной софт, угу.
Особенно когда Оракл сделал интеграцию Джавы в свой сервак.
Но старые системы никуда не делись при этом.
Здравствуйте, gandjustas, Вы писали:
V>>Гугл проводит ежегодные конференции на тему того, почему JS плох и почему Гугл отказыватся во внутренних ключевых своих разработках от JS. G>Ага, и пилит v8 движок, который собственно и дал развитие современному JS
Пилили в конце 2000-х.
Последние серьезные изменения были в 2011-м, они упёрлись в "непреодолимые проблемы" и выступили с инициативой NaCL.
V>>Тебе сколько видео с конференций гугла на эту тему накидать? 10? 20? Ты ни одного доклада не смотрел/не читал? )) G>Все смотрел и читал. Гугл пытается всем продать dart, чтобы доминировать в браузерах.
Он не просто пытается продать dart кому-то, он сам внутри себя в двух самых ключевых проектах от JS уже ушел.
G>>>В современном стандарте есть import и arrow functions, в стандарте 2015 года появились. А примерно с 2014 были доступны в TS. Фактически 3 уже года можно использовать. V>>Нельзя. Потому что совместимость. Т.е. если еще в каком-нить node.js можно, то на веб-страницах — нет. G>Опаньки, а как я это делал 3 года назад? Именно классы и arrow functions...
Что, прямо на страницах, передаваемых клиенту?
G>Внезапно TS умеет компилять из в es3.
TS — это не JS, на страницу его не кинешь.
G>Все можно если хотеть, а не брызгать слюной на форуме какой JS плохой.
Ты бы научился отвечать на конкретные аргументы (выделил), а не спорил сам с собой. ))
Здравствуйте, gandjustas, Вы писали:
V>>И эти люди вполне себе приносят некую пользу на своих проектах, почти всегда не понимая до конца, как "оно" устроено и работает. G>Это хорошо или плохо?
Мне всё-равно. Я отвечал на "независимо от языка".
Еще как зависимо по моим наблюдениям.
V>>А если программист начинает что-то понимать, то он обычно уходит на другие языки. V>>Аналогично с JS. G>Не аналогично
Да ладно.
Вопрос на засыпку — node.js реализует модель реактора или проактора?
Ну вот ты пользуешься им, насколько я понял, т.е. должен понимать, верно?
V>>Например, я не раз наблюдал примерно такую деэволюцию у коллег: Дельфи -> Джава/C# -> JS (распространённый сценарий, кста). G>Это путь роста продуктивности и кроссплатформенности.
Это путь вполне определённого слоя коллег, которые дальше сугубо прикладной области принципиально не заходят.
Именно в среде этих программистов живут и разможаются всевозможные мифы и заблуждения о собственных технологиях, которыми они оперируют. ))
V>>Но никогда не JS -> Джава/C# -> С++. )) G>Это путь падения продуктивности. Никто в здравом уме не станет решать задачу на C++ и даже на C#, если может её же решить на JS.
Речь не шла об одной и той же задаче, заметь.
Ты опять пытаешься спорить с тем, что тебе удобно.
Я так думаю, что программист с ростом должен уметь решать всё более сложные задачи.
Здравствуйте, Ikemefula, Вы писали:
S>>Изначально как звучал вопрос — "покажите код на 30 или меньше строк", а теперь, внезапно, добавились новые требования. Изворачиваетесь.
I>Ты не в состоянии проанализировать свойства своего решения ? Браво!
И тут в ход пошла эзотерика.
I>>>Например твой код в макоси не заработает. И в андроиде/иосе не заработает. А JS вариант заработает везде и сразу S>>А в nodejs? А без браузера? А в старых версиях браузеров?
I>Твой вариант сливает в любом случае, у него единственная возможность запуститься, когда юзер купил офис и пермишны позволяют запустить Эксель. Это смешное количество юзкейсов. На всех остальных у него ни единого шанса. А вот вариант в 30 строчек кода работает уже давненько.
И где это условие в исходном сообщении? Вас обидело, что вам тычут в лицо кодом с теми же проблемами, что и у вашего кода. И вы судорожно пытаетесь приплести "платно"/"бесплатно"/"кроссплатформенно", лишь бы не признать что исходный пример не более чем забавный однострочник, не демонстрирующий никаких преимуществ языка, и за использование которого в более-менее серьёзном проекте должны бить канделябрами. Насмерть.