Как стать автором
Обновить

Комментарии 50

Ну наконец то.
Вкусная штучка. Баловался немного, смотрел. Понравился жутко, особенно система геттеров и сеттеров, как в C#. Но в серьезных проектах не использовал. А вот и скоро стабильная версия.
Здорово!
Спасибо за новость. Давно присматривался к дарту. А есть ли иде где можно делать то же самое что и во флеше но используя дарт?
Спасибо! я, прочитав статью, чего то подумал что делаешь обычное флеш приложение и оно конвертиться в Dart
Хочется надеяться что и здесь они откажутся от Eclipse и сделают редактор на базе Intellij IDEA как они сделали с Android Studio.
Лично я бы обрадовался плагину под Netbeans :)
У JetBrains уже давно есть плагин к языку Dart.
Упорство, с которым Гугл форсит этот Дарт, заслуживает, на мой взгляд, лучшего применения.
НЛО прилетело и опубликовало эту надпись здесь
Очень сомнительно чтобы закрыли. Как говорится — жрать не просит.
Сейчас гугл идёт по пути майкрософт изобретая языки для всех нужд пользователе чтобы было — invented here. Есть же ещё GO(lang) который некоторые товарищи юзают на довольно таки серьёзных проектах. Ну а вообще здоровая конкуренция это хорошо )))
Даже GWT продолжает жить и развиваться, хотя от Google в последние 2 года о нем мало что было слышно. На крайнем Google IO разработчики заверили о планах развития.
Мы даже на нем пишем проект на 300к+ строк кода.
Ой не говорите ерунды, майкрософт никогда не закрывал ничего? Не отказывался ни от одного продукта? тэг ирония остерегайтесь windows phone 8, его скоро закроют и выпустят новую ос, как это было с windows mobile и windows phone 7 тэг ирония закрыт
Дарт уже сейчас вполне готов к применению. Вот как пример, одна из наших недавних интерактивных карт ria.ru/history_infografika/20130611/942583356.html
НЛО прилетело и опубликовало эту надпись здесь
Не понимаю в чем проблема, мы использовали определенную версию sdk для этого проекта, и если в будущем понадобится внести в него изменения, то мы будем использовать её. На сайте сейчас только cгенерированный JavaScript, она никак не зависит от текущий версии дарта.
CoffeeScript вообще не из этой серии, синтаксический сахар и не более. Оставшиеся предлагают статическую типизацию, и вот это имеет огромное значение когда кода много (для больших серьезных приложений это нужно).
НЛО прилетело и опубликовало эту надпись здесь
Разумеется статическая типизация это не просто сахарок, потому что еще на стадии разработки будут видны нестыковки, которые при использовании чистого JS видны не будут и держать их нужно в голове. Плюс автоматический рефакторинг, отслеживание вызова метода и тд.

Давно работаю как с Java так и с JavaScript, и прекрасно вижу какие проблемы возникают в случае если JS кода много, и тем более если отсутствует какая-либо структура ведения этого кода (были проекты где изначально JS писали Java разработчики, не желающие повышать свои JS навыки). Да классы дадут структуру, но вместе с классами статическая типизация еще более значительно улучшат уровень maintainaility JS кода. Зачем использовать какую-то абстракцию от JS (что в любом случае подразумевает некоторые трудозатраты на переход), если существует другая более перспективная и полезная.

Возможно кофи когда-то было уместно использовать, но скоро в этом не будет особого смысла (как дарт и тайп войдут в стабильную стадию). К тому же если говорить в TypeScript, то там синтаксис аналогичен JS, и войти в разработку проще что для рынка важно (дефицит разработчиков).

PS Для использования классового подхода к разработке кофискрипт совсем не обязателен.
НЛО прилетело и опубликовало эту надпись здесь
Почему отказались, в Java допустим комментарии к коду пишут не смотря на то что типизация изначально статическая, не путайте холодное с мягким. Не имею ничего против CoffeeScript, просто не вижу большого смысла в его использовании.
НЛО прилетело и опубликовало эту надпись здесь
Не вижу смысла в продолжении сравнения, разработчикам разница должна быть очевидна.
Ну, это извечный холивар про статическую и динамическую типизацию. Везде есть свои плюсы и минусы, и то, что статическая типизация «лучше», обычно говорят те, кто не использует мощь динамической типизации по-полной.
Лучше или хуже определяется целями. Логично что в TypeScript есть все что есть в JS, включая «мощь динамической типизации по-полной», а также есть возможность использовать статическую типизацию и прочие полезности, плюс есть простая интеграция с существующими JS решениями.
Мощь CoffeeScript — отнюдь не в ключевом слове «class. У него совершенно безумный (в лучшем смысле) синтаксис, с которого потом очень сложно слезть :)
Ну вот и выяснили, если кто-то любит «безумный (в лучшем смысле) синтаксис» то кофи для него, а если кому-то нужно писать сложные приложения, то есть другие варианты :)
Попробуйте VanillaJS — очень клевый, мощный и, самое главное, быстрый фреймворк.
Я кому-то на любимую мозоль, что ли, наступил?
Добавьте пожалуйста кратенькое описание сего зверя. Что это такое вообще.
Справедливости ради стоит заметить, что там написано, почему Дарт не нужен вам. Вы довольны его семантикой, средствами разработки, доступными из коробки библиотеками и производительностью. Не совсем понятно как из этого проистекает ненужность Дарт кому-либо другому, кто не столь доволен JavaScript.

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

Поясните, пожалуйста, откуда вы сделали такой вывод. Спасибо.

> воспринимается как хамство

Хамство — грубость, наглость до беззастенчивости.
Будьте добры, поясните, что конкретно вам кажется грубым и наглым в моей ремарке. Спасибо.

> Пожалуйста, проявите сдержанность.

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


Лично я отлично знаю зачем мне строгая типизация в том числе на фронтенде. Этим знанием я обязан опыту работы с JavaScript (коммерческому), Perl и Ruby (для себя).

И ради статической типизации я согласен даже на Dart (со всеми его недостатками), раз уж вот такие вкусности пока только эксперимент.

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

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

Однако речь не об удобстве, а о том, что Гугл всерьёз вознамерился искоренить JS и насадить вместо него Dart, поскольку, по каким-то причинам, JS кажется им неподходящим языком для Web.

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

Я совершенно не против Dart (TypeScript, CoffeeScript, GWT) как ещё одного языка разработки в Web. Я против насильственной замены JS на Dart.

Ремарка о широте кругозора относится именно к тем, кто продвигает идею перехода на Dart и отказа от JS.
Гугл всерьёз вознамерился искоренить JS и насадить вместо него Dart

Это несколько не реалистично.

Они даже могут делать подобные заявления для привлечения внимания, но это так и останется не реалистичным. В лучшем случае все браузеры начнут поддерживать asm.js и Dart будет компилироваться в него (поддержка стандартизированного байткода хоть и правильнее, но опять таки не реалистична). Может еще в хроме Dart и JavaScript начнут компилироваться в один и тот же байткод.

Речь про искоренение JS если и идет, то только для маркетинга.

Но именно от вас идут заявления в духе «Дарт не нужен». Если бы явно оговаривались «если вас устраивает JS, то Dart вам не нужен». Примите уже тот факт, что многих JS не устраивает.
> Они даже могут делать подобные заявления для привлечения внимания, но это так и останется не реалистичным.

Они уже сделали такие заявления, о чем вы?
Javascript has fundamental flaws that cannot be fixed merely by evolving the language. [...] The goal of the Dash effort is ultimately to replace JavaScript as the lingua franca of web development on the open web platform.

gist.github.com/paulmillr/1208618
Как это противоречит моим словам? Да, они могут делать подобные заявления. Нет, в полной мере у них этого не получится, но какие-то результаты, надеюсь, будут.
Положа руку на сердце, это вовсе не смертельные недостатки для языка программирования

Стоит отказаться от классовой парадигмы — и работа с JavaScript становится лёгкой и приятной.

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

И он не производит впечатления простоты и понятности.


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

Глупо было бы отрицать, что на свете много программистов, которые разделяют вашу точку зрения. Им нравится JavaScript со всеми его достоинствами и недостатками, и они не видят причины заменять его в повседневной работе чем-то другим.

Не менее странно, однако, утверждать, что все программисты должны довольствоваться JavaScript, а не стремиться к тем средствам разработки, которые удобны для них (а если они стремятся, то это «узкий кругозор» виноват!).
Правильно ли я понял, что, по вашему мнению, наличие в тексте любого суждения, сделанного мной лично, автоматически делает основной вывод оценочным и необоснованным?

Основная мысль, высказанная в указанном посте звучит так: «JavaScript и есть язык широкого профиля, от сложных скриптов до сложных приложений.» Кажется, это вполне объективное суждение, и оно никак не является просто моим личным мнением, не правда ли? Дальнейший текст иллюстрирует этот тезис, показывая, что у Дарта нет никаких объективных преимуществ на JS. И да, я вполне позволяю себе говорить от первого лица при этом.
показывая, что у Дарта нет никаких объективных преимуществ на JS


Вы показываете отталкиваясь от весьма субъективных критериев.

Для кого-то возможность получить исключение, а не undefined (или значение с Array.prototype!) при выходе за границы массива это уже преимущество. Точно так же, кому-то не интересно наворачивать снова и снова весь boilerplate связанный с prototype для того, чтобы выразить распространенную концепцию «вот объект он несет данные, а вот методы, которые с ним работают». Кому-то хочется сказать, что параметр x ожидается типа Foo и хочется выразить это знание прямо в коде, а не запихивать в jsdoc-комментарий.

Для меня, например, «аккуратная» и простая семантика, богатая стандартная библиотека (в которой многое унифицировано и причесано, например, парадигмы stream и future используются везде от клиентского dart:html до серверного dart:io), легко предсказуемая высокая производительность (достигаемая за счет гораздо более простой, и как следствие более стабильной и расширяемой VM), либеральная опциональная типизация — это все достоинства Dart.

Есть, конечно, и недостатки. Например, на мой взгляд Dart одновременно и недостаточно динамический (mirror builders должны улучшить ситуацию, но когда они будут специфицированы, не говоря уж о реализации не ясно) и не достаточно статический (и еще я бы предпочел поддержку non-nullable типов).

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

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

Однако речь не об удобстве, а о том, что Гугл всерьёз вознамерился искоренить JS и насадить вместо него Dart, поскольку, по каким-то причинам, JS кажется им неподходящим языком для Web.

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

Я совершенно не против Dart (TypeScript, CoffeeScript, GWT) как ещё одного языка разработки в Web. Я против насильственной замены JS на Dart.
Я против насильственной замены JS на Dart.


А где вы видите насильственную замену JS на Dart и «уничтожение JS»? Это такой мем, который возник на пустом месте.

Заменить JS полностью на Dart можно было бы только, если бы двое из ларца (одинаковы с лица) выскочили и за ночь переписали весь интернет и все браузеры :-)

Dart предлагает платформу, кто хочет пользуется. Кто не хочет — не пользуется.
Да ладно?
Javascript has fundamental flaws that cannot be fixed merely by evolving the language. [...] The goal of the Dash effort is ultimately to replace JavaScript as the lingua franca of web development on the open web platform.

gist.github.com/paulmillr/1208618
Если внутренняя переписка гугловцев «пустое место», то что тогда полное?
Здесь нет ничего про насильственную замену.

Если люди увидят достоинства Dart над JavaScript и большей частью пересядут на него, то в чем проблема? В амбициозности? «Через тернии к звездам» Надо стремится к светлому будущему, иначе оно никогда не настанет.

Как я уже говорил выше, я не считаю, что JavaScript может взять и исчезнуть по щелчку пальцами. Все решают массы и время. Демократия в чистом виде.
> Здесь нет ничего про насильственную замену.

Методы замены JS на Dart в документе не обозначены, действительно. Но обозначено вполне конкретное стремление Google заменить JS на Дарт. Не сделать альтернативу, а именно заменить.

> Если люди увидят достоинства Dart над JavaScript и большей частью пересядут на него, то в чем проблема?

В чем проблема — я обозначил в исходном посте.
А также в том, что никаких объективных (невкусовых) достоинств у Dart перед JS нет.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории