|
2.3, Ушастик (?), 20:29, 14/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +4 +/– |
Дарт отлично компилится в js. Наличие нативной поддержки на уровне ВМ браузера — только палки в колеса ставить стремительно развивающемуся языку.
| |
|
|
4.19, rshadow (ok), 22:04, 14/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +3 +/– |
Косяки есть везде и всегда. Но яваскрипт это шедевр говноязыка. Теперь, когда первенство проприетарного уг типа ie (и оперы) сведено на нет, самое время продвигать нормальные языки.
Дартс я не знаю нормальный или нет .. пощупаем. Но тенденция радует.
| |
|
|
|
|
2.93, Аноним (-), 12:50, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| –1 +/– |
Учитвая, что Opera перешла на Blink, а разработка Firefox ведётся на деньги гугла, то скоро Dart'а не будет, разве что, в IE и Safari.
| |
|
|
|
|
4.17, Ушастик (?), 21:36, 14/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Это классический пример кода рекурсии. Понятно, что реальный код так писать никто не будет. Хотя вот оптимизация хвостовой рекурсии у команды Дарта в планах. Конечно же, больше всего этому мешает необходимость компилироваться в js.
| |
|
5.42, Аноним (-), 00:59, 15/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| +/– |
Оптимизация хвостовой рекурсии - это такая штука, которая вроде как сначала работает, а потом поменяли чуть выражение и бац - чтобы сложить числа отъелась вся оперативка?
Это хорошо для исследовательских языков, где зависло - нажал ctrl-C и попробовал по-другому, а в продакшн - нафиг-нафиг.
Ещё и монады прикрутить, ага. Которые в принципе синтаксически очень приятный хаскел по удобству реального применения ставят в один ряд с брейнфаком.
| |
|
6.58, Ушастик (?), 03:36, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Ничего подобного, более того, например, в Clojure надо явно указывать, что собираешься ее использовать, там вариант "случайности" исключен вообще. В других языках, где нет формального разделения все ложится на программиста, но опять же, для функциональных языков это стандартный паттерн, и ошибки подобного рода достаточно редки. Разработчикам Dart если уж хотят перестраховаться ничего не стоит применить опыт Clojure, чтоб уж наверняка.
Монады в неявном виде есть практически во всех современных языках программирования. Эта тема не раз уже обсасовалась со всех сторон. То что в Хаскеле их выделили и дали им названия, не приватизирует их.
| |
|
7.97, Аноним (-), 13:10, 15/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +/– |
>в Clojure надо явно указывать, что собираешься ее использовать
Это кстати не от хорошей жизни, а от недостатков JVM. Но идея получилась здравая, да.
| |
|
|
|
|
|
|
|
|
|
4.33, тоже Аноним (ok), 23:44, 14/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +/– |
А при компиляции в JS так же элегантно достает костыли?
Что-то не слишком громко заявлено о кроссбраузерности полученного таким образом кода. Может, с ней есть "небольшие проблемы"?
| |
|
5.39, Аноним (-), 00:34, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| –1 +/– |
Нет, туда просто забивается много костылей.
google:// Hello world на языке Dart, скомпиленный в js, занял 17259 строк
| |
|
4.55, rshadow (ok), 03:18, 15/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| +/– |
К сожалению как бы хорошо он не работал с DOM все равно нужна куча костылей и проверок на браузер. Иначе обычный AJAX запрос превратится в адъ. И т.д. и т.п.
| |
|
|
|
1.14, Аноним (-), 21:21, 14/11/2013 [ответить] [﹢﹢﹢] [ · · · ] [↓] [↑] [к модератору]
| –4 +/– |
Ура. Отличная вещь. Еще бы побольше библиотек для server-side разработки и вообще будет красота. НЕмного правда вымораживает _ вместо private, но это все мелочию
| |
|
|
3.23, Аноним (-), 22:28, 14/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +1 +/– |
Go тоже интересная вещь, но все таки Dart позиционируется как язык для server/client-side разработки, а не только как замена js в браузере.
| |
|
2.24, rshadow (ok), 22:29, 14/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| –1 +/– |
> Ура. Отличная вещь. Еще бы побольше библиотек для server-side разработки
Для сервер сайда надо очень много разных библиотек, такое годами копится...
| |
2.71, Аноним (-), 05:30, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
>НЕмного правда вымораживает _ вместо private
Они тоже упоролись, как и разработчики Angular? Как тогда работать с ключами MongoDB (которые именуются _id?
| |
|
1.29, 3draven (ok), 22:59, 14/11/2013 [ответить] [﹢﹢﹢] [ · · · ] [↓] [↑] [к модератору]
| –1 +/– |
Сначала они запилили gwt с компилятором в javascript, вроде бы не прокатило толком. Решили с другого конца заехать и запилили dart с компиляцией в javascript и потенциальным серверсайдом. Прием все это очень похоже на яву, прямо таки очень-приочень. Спрашивается, зачем? Неужели хотят оракл выдавить и место занять? Корпорация добра замахивается аднака.
| |
|
2.34, тоже Аноним (ok), 23:49, 14/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +4 +/– |
Посмотрите на вопрос не через призму мемов.
Фирма, достаточно мощная, чтобы самой делать себе инструменты разработки, не только делает эти инструменты общедоступными, но и тратится на их пиар. Если то, в чем было удобно работать программистам Гугля, станет отраслевым стандартом - нам-то с вами от этого явно хуже не станет. Если Гугль еще и найдет возможность получить с этого профит - ну, и славно!
"Да не хулится ваше доброе".
| |
|
3.36, 3draven (ok), 00:18, 15/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +/– |
Перетащив массу программистов на свои разработки гугль получает контроль над ними, а дальше, как кривая вывезет. Можно много чего придумать и просто сказать "так будет"...как сейчас оракл делает. Причем я не ругал, а констатировал. В любом случае никакой апач и прочие не могут конкурировать с ораклом и гуглем...ну еще красношапка есть с мелкософтом. Так что это все ругать как на дождь орать, что он пошел :) Факт остается фактом, гугль метит в контроллеры следующего витка развития веба...а он состоит в простой мысли "расстрелять зоопарк". Сейчас будет рождаться следующий, универсальный, сквозной фреймворк для разработки клиент-сервера. Если заметите, очередь в цари уже выстроилась :)
| |
|
4.40, Аноним (-), 00:38, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Мне написать весь список проектов которые Гуугл похоронил/поддерживат в полуживом состоянии/выкинул сообществу?
| |
4.82, тоже Аноним (ok), 09:36, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +1 +/– |
Вы просто представить себе не можете, какую армию профессионалов сейчас контролирует, казалось бы, скромный ботаник Бьярне Страуструп... Бойтесь быть его врагом!!!
| |
|
3.37, 3draven (ok), 00:21, 15/11/2013 [^] [^^] [^^^] [ответить] [↓] [↑] [к модератору]
| +3 +/– |
Причем, обратите внимание. Красношапка выкатила цейлон (он имеет свой sdk и утилиты и компилируем в javascript), гугл выкатил дарт и го, окракл выкатил invoke dynamic на jvm что бы платформа цвела.
Знаете почему? Чуют все, что ява приказывает долго жить и обратная совместимость не дает ей развиваться. Потому то и начали потихоньку рынок делить, будущий рынок, скоро программисты Ынтерпрайза с явы побегут, остается понять куда и присоединиться :)
| |
|
4.51, Аноним (-), 02:01, 15/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +/– |
> Чуют все, что ява приказывает долго жить
Странное заявление на фоне новостей "Андроид продается от 1 000 000 аппаратов в день" и "Количество приложений для достигло миллиона".
> и обратная совместимость
> не дает ей развиваться.
Проклятая совместимость - не дает развиваться. Видимо истории с Python 3, D 2.0, Perl 6 и т. д., никого ничему не учат.
| |
4.100, Kodir (ok), 13:30, 15/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| –2 +/– |
> ... скоро программисты Ынтерпрайза с явы побегут
Ха-ха! Ну ты пошутил :) Да не "скоро", а уже лет 10 как бегут - только пятки сверкают! Сейчас бегут уже те тормоза, кому ноги по горло промочило - опомнились.
Дотнет - вот куда им всем дорога, пусть хоть на старости лет поживут спокойно.
| |
|
5.122, arisu (ok), 17:48, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
какой Иксперт у нас в треде! senior developer, небось, автор кода, систем и архитектур.
(присмотрелся повнимательней) ой, извините, я обознался. это просто говорящая жопа.
| |
|
|
|
4.98, тоже Аноним (ok), 13:23, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +2 +/– |
У популярных языков, бывает, вдруг появляются наработки в виде библиотек и решений, позволяющих сократить затраты на разработку. Так что Гуглю интересно, чтобы его рабочий инструмент был широко известен и популярен.
| |
4.102, Crazy Alex (ok), 13:36, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Это как раз понятно.
Гуглу нужны хорошие качественые веб-приложения (не только свои), чтобы пересадить людей с натива. Логично, что для этого нужны приличные инструменты. А джаваскрипт для больших приложений - это ад кромешный.
Ну и оказать давление для стандартизации Дарта, конечно.
| |
|
3.90, mf (ok), 11:05, 15/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| –2 +/– |
Поделки гугла никаким стандартом стать не могут, потому как не доживают до написания даже черновика
| |
|
2.47, Антоним (?), 01:49, 15/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| –4 +/– |
Корпорация Добра не может писать код прямо в яваскрипте, корпоративная магия исчезает когда клиент может просто посмотреть код, пусть и обфускаченый, (или не просто посмотреть а и улучшить или слямзить ;-) ). Вот они и защищают свою интелектуальную собственность.
| |
|
|
|
3.45, Аноним (-), 01:28, 15/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +/– |
> замена устаревшему языку идёт.
Ну если в возможность убедить мозиллу это сделать я еще поверю, то вот MS тут выступит стояночным тормозом ручного типа.
| |
3.46, mf (ok), 01:48, 15/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| +/– |
То были забавные уши, вылезшие из общесистемного интерфейса active scripting и COM, из времён, когда мс пытался что-то делать. Каждый разработчик языка реализовавший интерфейс IActiveScript и взаимодействие с OLE-типами - засовывал в wsh, asp, IE поддержку своего языка. Например ActivePerl.
VBScript использовался в основном в HTML Application (Этакий тизен прошлого тысячелетия), - там где взаимодействие с COM преобладало над DOM. А это - хрень какая-то, концепт языка более лучшего чем яваскрипт.
| |
|
|
1.77, Анонисимус (?), 06:17, 15/11/2013 [ответить] [﹢﹢﹢] [ · · · ] [↓] [к модератору]
| +/– |
А плагин к IDEA кто-нибудь пользует? У меня в PyCharm на попытку запустить скрипт выдает 'Error running dartcons.dart: Cant find Dart executable\: {0}', хотя в настройках плагина пути к SDK прописаны, и версию плагин правильную показывает.
| |
|
2.86, Leshka (?), 09:46, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| –1 +/– |
Использовал с phpstorm 6, полет нормальный. Хотя он умеет только подсвечивать синтаксис. Поодержки отладки нет.
Я вообще не понимаю зачем гугл наступает на эти грабли под названием Eclipse еще раз. Они уже делали Android SDK на его основе, потом перешли на IDEA. Eclipse же дико неудобный после того как попользоваться ide от JetBrains.
| |
|
1.80, jOKer (ok), 07:41, 15/11/2013 [ответить] [﹢﹢﹢] [ · · · ] [↓] [↑] [к модератору]
| +/– |
И все равно без фреймворков обеспечивающих поддержку единообразного доступа к источникам данных (включая рест) и связку их с визуальными компонентами (и сами визуальные компоненты, кстати, тоже) практическая ценность дарта на клиентской стороне не велика.... а в AngularDart и polymer.dart, упомянутых в статье, этого вроде как и нет.
| |
|
2.88, Аноним (-), 09:59, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Есть же WebUI для визуальных компонентов. С REST, Ajax, WebSockets оно умеет работать и очень даже хорошо. А какой еще доступ к данным может быть на клиентской стороне? Вот нормальных ORM-ов на стороне сервера действительно не хватает.
| |
2.103, Crazy Alex (ok), 13:41, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Думаю,скоро до них дойдет и они таки напишут UI на чистом канвасе. И получат гарантироанно кроссплатформенную предсказуемую работу.
Ну а доступы и ресты - штука не такая сложная, не гуглы - так кто-то другой нарисует.
| |
|
|
4.108, анонимус (??), 14:26, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
>- сложным веб-приложениям требуются механизмы уровня контроллера. Я имею ввиду управления сценами, переходами между сценами, маршрутизацию запросов и т. д. Полагаю, что этого в тулкитах под дарт тоже нет пока. А это значит, что те же мобильные веб-приложения отдыхают в стороне.
man Rikulo
| |
4.138, Crazy Alex (ok), 22:18, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Думаю, что всё будет проще. Не будет ни маршрутизации, ни чего-то подобного. Будет XML или JSON, описывающий построеие интерфейса, и отрисовка всего и вся на канвасе так, как делается на десктопе или на андроиде. Благо, в отличие от веба, всё это сто лет как отработано и может быть портировано со вполне разумными усилиями.
С подгрузкой всё решается ещё проще - если у тебя два десятка стандартных контролов, лежащих в CDN гугла - не имеет значения, как они велики и не затормозит ли при первой подгрузке - потому что потом они будут лежать в кэше вообще всегда.
Ну а картинки предварительно подтянуть, если они в XML отмечены - явно не проблема.
| |
|
|
6.157, mf (ok), 12:52, 16/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +1 +/– |
require можно было и по короче продемонстрировать. А вот проблему подняли годную. Онолитеги радуются появлению в яваскрипт всякого бреда, на подобие классов, свойств. В то время как действительно важные проблемы, описанные и частично решенные у Фланагена так и остаются за бортом.
| |
6.162, Crazy Alex (ok), 19:54, 16/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| –1 +/– |
Какой DOM? Оно надо - бороться с несовместимостями? Тупо страница, состоящая из нескольких <script> и одного <canvas>. Ну плюс декор какой-то, не относящийся к работе приложения.
Дальше прилетает с CDN (а точнее - давно прилетел и лежит в кэше) ком из дарт-скриптов мегабайта на три или на десять, который и рисует на этом канвасе контролы и обеспечивает их гарантированно одинаковую работу где угодно. Ресурсы приложения подтянуть и понять, когда загрузка заврешилась - как-то никто аяксовые события не отменял.
Вот это и будет в конце концов. Потому что нефиг городить сложное, если можно обойтись грубой силой.
| |
|
7.166, mf (ok), 22:24, 16/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| –1 +/– |
Это Вы ActiveX(Java applet, Flash, SilverLight) описали?
require решает проблему разрешения ссылок при организации деления на модули при их динамической (и асинхронной) загрузке. Из кеша файлы загружаются так же непоследовательно как и по http.
В общем что-то не ту проблему Вы увидели и решили.
| |
|
|
|
|
3.119, arisu (ok), 17:42, 15/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| +/– |
> Думаю,скоро до них дойдет и они таки напишут UI на чистом канвасе.
это да, я с нетерпением жду, когда в программе, по сути являющейся одним гигантским layout engine на её скриптовом языке начнут писать layout engines. а TCO тут нет.
| |
|
4.139, Crazy Alex (ok), 22:21, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Учитывая, что эта layout engine уже мега гигантская и при этом напрочь не приспособлена для формирования интерфейсов приложений - всё рано до этого дойдёт. Особенно при том, что на таких объемах спек различий между реализациями не быть не может в принципе - соблазн выкинуть к чертям 90% костылей будет очень велик.
| |
|
5.144, arisu (ok), 22:36, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +1 +/– |
фишка в том, что «основной» layout engine при этом никто не выкинет — хотя это самое логичное. собрать всех идиотов с их «веб-приложениями» и выделить им отдельную платформу, на которой «веб-приложения» перестанут быть как идиотизмом, так и «веб», а станут просто сетевыми. кто сказал «java web start»?!
| |
|
|
|
|
1.92, Аноним (-), 12:45, 15/11/2013 [ответить] [﹢﹢﹢] [ · · · ] [↓] [к модератору]
| –2 +/– |
>выполняется в браузерах на базе движка V8 на 42-130% быстрее
Т.е. в два раза медленнее в худшем и в 1.3 раза быстрее в лучшем случае - маркетинг такой маркетинг.
| |
|
|
3.115, Аноним (-), 16:51, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
А теперь внимательно посмотрите на график. Пусть из новости это не понятно, но это результат бенчмарка DeltaBlue. Зелёная линия посередине - JavaScript, та что ниже - Dart компилированный в JS, та что выше - Dart в своей VM. Чем выше - тем быстрее. Как вы можете видеть - Dart компилированный в JS в худшем случае в два раза медленнее JS, в лучшем - в 1.3 раза быстрее.
| |
|
4.140, Crazy Alex (ok), 22:23, 15/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +/– |
Не смущает, что по горизонтальной шкале - даты? Это, вообще-то, картинка, на которой показано, до каких высот в оптимизации они дошли.
| |
|
|
|
1.99, Kodir (ok), 13:27, 15/11/2013 [ответить] [﹢﹢﹢] [ · · · ] [↓] [↑] [к модератору]
| –3 +/– |
Будь у Дарта хоть тысяча преимуществ над жабоскриптом, Дарт не взлетит - слишком поздно они проснулись. Когда только эта жабо-зараза ещё начала распространяться, уже тогда мы предупреждали: язык - отстой, годится только для однострочных действий, в продакшене такое чмо нафик не нужно! Но нет, запилили аж десять версий, а теперь на те - оказывается, он плохой! Клоуны...
| |
|
|
|
4.134, arisu (ok), 21:42, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +1 +/– |
> Да и ты тоже она самая….
но я хотя бы знаю, что «многоточие» состоит из трёх точек. а тебя даже такой простой вещи научить не смогли.
| |
|
|
|
|
2.111, Аноним (-), 16:24, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Вот почему, вздыхает фермер Иван, трактора в магазине такие красивые и блестящие, а в деревне все ездят на грязных да ржавых, да с приваренными косилками и привязанными боронами. Дураки!
| |
|
3.114, asavah (ok), 16:44, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Да, есть такой бяда.
Но если говорить о вэб-дизайне/браузерном скриптинге то возникает большая проблема:
Если взять весь зоопарк браузеров - они даже html/css стандарты по разному понимают, а клиент "хочет" чтоб сайт одинаково выглядел как на 6-м осле так и на модных хромых/операх/ойфоновских сафари итп. Что делает разраб - берёт то, что работает более-менее везде и лепит костыли для кривых браузеров.
Мораль сей басни такова - к большому сожалению пока не будет нормальной поддержки во всех "мажорных" браузерах новым, правильным и вкусным технологиям не жить.
ЗЫ Разраб просто не будет терять время на написание одной и той же хрени 2 раза - один раз на модном языке для нормальных браузеров и второй например на жабаскрипте для ослов и прочего непотребства.
| |
|
4.123, arisu (ok), 17:51, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
потому что изначально надо было сделать бинарные форматы и жёстко специфицировать всё поведение. и вместо языка выкатить спеки VM. и сейчас всё было бы лучше, быстрее, проще и красивей.
а теперь уже поздно: слишком много говна наделали.
| |
|
5.126, asavah (ok), 18:25, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
+100500
но говорят, что когда-то давным-давно некий дядя сказанул :"640K ought to be enough for anybody.".
Вот так и живём с бородой 100летней давности и дрожа из-за "backward compatibility".
| |
|
6.127, arisu (ok), 18:49, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +1 +/– |
> но говорят, что когда-то давным-давно некий дядя сказанул :"640K ought to be
> enough for anybody.».
причём дядя этот был журношлюхой, но приписал своё высказывание вовсе другому дяде.
| |
6.130, Аноним (-), 21:37, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| –1 +/– |
> +100500
> но говорят, что когда-то давным-давно некий дядя сказанул :"640K ought to be
> enough for anybody.".
> Вот так и живём с бородой 100летней давности и дрожа из-за "backward
> compatibility".
Главная максима ИТ гласит: "Совместимость важнее производительности".
| |
|
7.135, arisu (ok), 21:43, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +3 +/– |
> Главная максима ИТ гласит: «Совместимость важнее производительности».
именно поэтому, наверное, у нас нет ни того, ни другого.
| |
|
|
|
|
|
|
|
|
|
4.145, arisu (ok), 22:37, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
> Вообще-то, как ни странно, его в последние пару месяцев IE чуток отпихнул.
> Каким чудом — убей, не пойму.
так ишак нумер 11 вышел же.
| |
4.154, тоже Аноним (ok), 09:41, 16/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Чудо простое: веб-дизайнеры всего мира сразу начали его использовать... для поиска новых проблем, которые принес очередной выкидыш MS.
| |
|
|
|
1.128, Филипп Филиппович (ok), 19:25, 15/11/2013 [ответить] [﹢﹢﹢] [ · · · ] [↓] [к модератору]
| +2 +/– |
Дай-то Бог, чтобы что-нибудь такое уже наконец взлетело.
JS, может, не так и страшен, если рассматривать его абстрактно от того, для чего он применяется. Даже в чём-то интересен, пожалуй. И прототипы красоты не лишены. Но для того, для чего он применяется в вебе, он совершенно неподражаемо ужасен, и почти весь код на нём напоминает попытку сложить слово "вечность" из четырёх букв: Ж, О, П и А.
| |
|
2.133, Аноним (-), 21:39, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +1 +/– |
> Дай-то Бог, чтобы что-нибудь такое уже наконец взлетело.
> JS, может, не так и страшен, если рассматривать его абстрактно от того,
> для чего он применяется. Даже в чём-то интересен, пожалуй. И прототипы
> красоты не лишены. Но для того, для чего он применяется в
> вебе, он совершенно неподражаемо ужасен, и почти весь код на нём
> напоминает попытку сложить слово "вечность" из четырёх букв: Ж, О, П
> и А.
Язык и кодеры - не синонимы.
| |
|
3.142, Crazy Alex (ok), 22:30, 15/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Кодеры-то всякие, а вот язык... Чтобы его в больших проектах беспроблемно применять его надо сильно заморить на манер непринятого ECMAScript 4, а чтобы это еще и в браузерах жило, а не скреблось в корчах... даже не знаю, что нужно - навреное, действительно тупо байткод и низкоуровневый интерфейс - вот тебе события ввода, вот канвас, вот устройства - вперед. ну нельзя обойьтись без горы костылей и несовместимостей на таких монстрах, как нынешние браузеры с их развесистым API.
| |
3.160, Филипп Филиппович (ok), 19:43, 16/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Язык это откровенно провоцирует. Сам по себе, повторюсь, он вполне логичен. Но там, с одной стороны, не хватает массы привычных механизмов (классов без плясок с бубном, наследования без искусственной его имитации и т.п.), зато есть масса непривычных (прототипы, специфическое разрешение областей видимости...). Плюс, будучи чисто динамическим языком, он не так уж хорошо годится для оптимизации скорости. Конечно, с ним теперь чудеса делают, но с более подходящим языком чудес было бы больше.
Имеет ли такой язык право на существование? Имеет, конечно. Его небезынтересно выучить, на нём прикольно попрограммировать, от того же C/C++ он так забавно отличается по концепциям, что кругозор волей-неволей расширяет.
Но годится ли такой язык для сугубо утилитарного программирования, например, GUI? Да плохо он для этого годится. И, пожалуй, лучшее доказательство -- посмотреть на любой вменяемый JS-фреймворк для написания сложного GUI. Скажем, лет пять назад я плотно имел дело с ExtJS, ныне Sencha ExtJS, и с Dojo. Стоит вчитаться, как там эмулируют наследование, вот уж где вечность из четырёх букв-то! И ведь видно, что хотят получить именно наследование, но готового механизма в языке нет. Именно такую ситуацию (почти все пользователи нуждаются в неком механизме, а в языке его нет) я и называю "язык не подходит для этих задач".
| |
|
4.165, arisu (ok), 20:02, 16/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
> Но годится ли такой язык для сугубо утилитарного программирования, например, GUI? Да
> плохо он для этого годится.
Алан Кей в удивлении чешет затылок.
| |
|
5.171, Crazy Alex (ok), 01:22, 17/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| +/– |
Алан Кей, как бы, не эквивалентен среднему быдлокодеру. А именно этим средним нужно клепать в разумные сроки иногда довольно сложные приложения. И тут JS адски неудобен (вместе с DOM, конечно), хотя костылить его как только не пытались. Вон, последний писк - reactive фреймворки, начавшиеся с AngularJS, с биндингами, иногда даже двусторонними. Концепций много - толку мало...
Ну и Smalltalk, как ни крути, умер. Полагаю, во многом - как раз из-за своей даской динамичности, которая в продакшне скорее вредна, чем полезна. Можешь сравнить с джавой, которая уродлива со всех сторон, но "правильно" уродлива.
| |
|
6.172, arisu (ok), 01:29, 17/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +1 +/– |
> Алан Кей, как бы, не эквивалентен среднему быдлокодеру.
так, пардон, это не «язык не подходит» тогда, это быдлокодер не подходит. так и следует писать: «быдлокодер плохо подходит для создания GUI».
> Ну и Smalltalk, как ни крути, умер.
вот тут разработчики squeak, pharo, seaside, aida, swazoo, etc… и поставщики коммерческих смолтолков очень удивились своей высокой продуктивности из могилы. это я уже не говорю о том, что есть весьма навороченый, например, диалект смолтолка, который компилируется в машинный код через си (интересный проект, кстати).
> из-за своей даской динамичности, которая в продакшне скорее вредна, чем
> полезна.
«в продакшене» она совершенно перпендикулярна. а вот hotpatching — очень, очень вкусен. эрланговцы тебе расскажут, какая это прелесть, спроси.
> Можешь сравнить с джавой, которая уродлива со всех сторон, но
> «правильно» уродлива.
да не в этом дело совсем. но тут начинается совсем уже другая сказка.
| |
|
7.174, Crazy Alex (ok), 17:46, 17/11/2013 [^] [^^] [^^^] [ответить] [↓] [к модератору]
| +/– |
Не, язык сменить как-то проще чем взять каких-то других былокодеров на место существующих. И, что характерно, с какими-нибудь дельфями, жабой, WPF или Qt и прилагающимися языками они вполне справляются с задачей.
А твои примеры я сейчас погуглю, конечно, но то, что я ни про один и не слышал никогда, наводин на подозрения, что это какая-то экзотика. Мой любимец перл и то чуть-чуть живее, хотя тоже трупак, конечно.
И нет, в продакшне излишняя гибкость на фиг не нужна обычно. Нужно "от сих до сих" (правда, дя каждой области - пределы разные), а что за пределами - чтобы сделать было нельзя или чтобы валилось с ошибкой, крайне желательно - на этапе статического анализа. А хотпатчинг (я сам на эрланге маленько писал, если что) - он на самом деле мало где актуален. Обычно либо у тебя хилая системка из одной машины и ты её для патча спокойно выведешь из эксплуатации на некоторое время, либо у тебя балансировка и много хостов, тогда тем более по одному апдейтить не проблема ни разу. Это если веб, конечно - но сейчас кругом веб, да и для других сервисов оно актуально.
А как можно осмысленно скомпилировать насквозь динамический смаллтолк в машинный код - я вообще не понимаю.
| |
7.175, Crazy Alex (ok), 17:51, 17/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| –1 +/– |
Тьфу, блин. Ттак перечисленное тобой - это сами смаллтолки плюс веб-тулзы. Неудивительно, что я их не знаю. И что? Покажи хоть что-то большое/успешное, что на нем написано. И сравни даже с тем же трупом перла, на котором будет эдак на три порядка больше абсолютно живых систем - и то трупом он от этого быть не перестаёт.
| |
|
6.178, Филипп Филиппович (ok), 20:51, 17/11/2013 [^] [^^] [^^^] [ответить] [↑] [к модератору]
| –1 +/– |
Вот-вот, если для умеренно качественного решения типовой задачи, не требующей семи пядей во лбу, нужен разработчик высшего класса, это и есть "нетехнологично". То есть язык не подходит.
| |
|
7.179, arisu (ok), 21:18, 17/11/2013 [^] [^^] [^^^] [ответить] [к модератору]
| –1 +/– |
нужен разработчик, который умеет пользоваться вилкой и ложку несёт не в ухо, а в рот. но для тебя — я понимаю — это «семь пядей во лбу».
| |
|
|
|
|
|
|
1.159, paralox (?), 14:50, 16/11/2013 [ответить] [﹢﹢﹢] [ · · · ] [↑] [к модератору]
| +/– |
> Плагины с поддержкой Dart также подготовлены для...
Список лучших IDE есть, спасибо Google!
Осталось малость, выбрать лучшего из лучших...))
| |
1.181, Аноним (-), 13:55, 26/11/2013 [ответить] [﹢﹢﹢] [ · · · ] [к модератору]
| +/– |
нaписaл уже 10К строк, очень неплохо.
в сaмом деле похож нa яву но тольно снaружи, внутри используются динaмические
в отличие от явы типы.
javascript удобен когдa пишешь тысченку строк, a потом все стaновиться
слишком зaпутaнным.
| |
|