Pull to refresh

Comments 55

Посмотрел. Очень вкусно. Максимально, конечно хочется, что бы всё это обрело массовую популярность!
А мне вот не нравится, что по сути это — ява.
Да хоть ассемблер. Какая разница?
Прежде чем ответить, меня интересует один единственный вопрос: Вы пробовали писать на ассемблере?
Коммерчески — нет. Вопрос не в ассемблере заключался.
А в чем? В том, что мы избавляемся от JS и будем писать на языке который проще для среднестатистического программиста? Думаю да, в этом.

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

Лучше бы тот же CoffeScript до ума довели, пользы больше было бы.
Что вы понимаете под простотой и что в этом плохого? Чем проще писать/поддерживать код, тем он лучше. А лучше использовать нормальное наследование и т.п., чем читать постоянное «я не понимаю, как использовать прототипное наследование в JS» или «смотри как я реализовал GoF-паттерны в JS».
Под простотой я понимаю то, что мой мозг не должен думать о таких вещах как: память или области видимости — наверное главная проблема JS, после отсутсвия типов (когда нужно всегда держать под рукой мануал или не забывать про комментарии)
Так это же плюс того (цитирую), «что по сути это — ява», а не минус.
Для среднего программиста который будет клепать клиент-сайд формы еще одного банка — плюс, новый язык учить не надо. Для хипстеров, которые сейчас и толкают вперед всю клиенскую разработку и постепенно вливаются в серверную — минус.
Про «хипстеров из клиентской разработки» это пять.
>В том, что мы избавляемся от JS и будем писать на языке который проще для среднестатистического программиста?

Вы так говорите, как будто это что-то плохое. Я считаю, что лучший подход это тот, где работа может быть выполнена проще и быстрее при сравнимом качестве результата.
Нет, я лично полностью за (хотя во времена молодости и веб-девелопмента у меня никогда не было проблем с яваскриптом), но ява — не самый лучший вариант.
Я так и не понял с какой точки зрения вам не нравится ява. Синтаксис? Производительность? Поддержка сообщества? Инструменты разработки? Легкость вхождения? Личная неприязнь?
Синтаксис, с остальным у явы гораздо лучше нежели во всех других языках
Согласен, но мне кажется, что это низкая плата за остальные плюшки.
По сути это — джаваскрипт. А вот по форме — джава.
Ну значит хипстопрограммисты не будут им пользоваться. Им больше по душе coffeescript (и может чуточку typescript).
p.s. сам я хипстопрограммист
А чем плоха джава как форма? По-моему, очень удобно и понятно, хорошо читается, хорошие IDE.
Скорость дарта, насколько я понимаю, ничем не отличается от скорости джаваскрипта сейчас — он же компилируется в джаваскрипт, и будет выше в будующем, не будет зоопарка виртуальных машин для него, а будет гугловская, которую все будут использовать. Гугл вроде бы обычно хоршие продукты делает и к производительности они относятся достаточно серьезно.
Хоть я и люблю гугл, но косячат они иногда с этим, косячат…
А вы сейчас про какой продукт говорите?
В андроиде, например, поначалу много косяков с производительностью было.
А, ну так начало оно на то и есть начало. Никто же и не говорит пользоваться дартом с первого же релиза — стоит подождать, пока доточат, наверное. Все гугловые проекты начинают с максимального количества фич, а потом занимаются улучшением производительности вроде бы.
В моем случае — это личное) Я воспринимаю джаву как скучный корпоративный язык (никого не хочу обидеть данным выражением, это чисто мое мнение).

Но а вообще, принцип «write less, do more», поглядите на синтаксис того же coffeescript
Ну я не очень понимаю, что такое «корпоративный язык». По-моему, тот язык хорош, который свою задачу выполняет хорошо. Если несоклько языков выполняют хорошо, то дальше вопрос вкуча. Для меня очень важна развитая библиотека и хорошая IDE. Из этих соображений Dart практически идеален. ни для одного языка нету таких крутых IDE, как для джавы, а для работы с дартом требуется минимум изменений.
скучный корпоративный язык
Это было правдой лет 5 назад. Сейчас все огромными шагами движется в сторону write less, do more
Взять, например, JAX-RS или Spring Data — это огромный шаг вперед.
О да зато как весело продираться сквозь дебри спагети кода, извращаться с неймспейсами, думать о фокусниках переопределивших прототипы, думать о том есть ли нужное свойство в переданном тебе объекте.

А так да скучно, никакой интриги — все ясно прописано и тупо понятно. Никаких танцев с бубнами. И не надо мне говорить что я не умею их готовить, и напоминать мне про топик с выпечкой хлеба. Когда проект на js разрастается, то от сползания его в неподдерживаемое гавно спасет только хорошая команда спецов. Быстро «спрограммировать» сайт на jQuery да тут js равных нету. Но вот для больших приложений, которые кстати гугл и пишет, dart, TypeScript подходят намного больше.
Ну гугл уже делал GWT, и где оно? и почему Gmail не на GWT?
там же где java1.4 jsf и прочий устарелый интерпрайзный хлам. Делалось под другие потребности. Для широких масс оказалось перегруженным и слишком привязанным к яве.
что, кроме пары ключевых слов общего с Java?
Если не брать в расчет язык (о да, облегченная версия явы), то давайте посмотрим на SDK. Можем даже поиграть в «найди десять отличий от JDK»
Меня интересует язык и что делает его «облегченной версией явы».

Библиотека имеет некоторое сходство с Java, но также и имеет и сходство с JavaScript. К тому же она в активной переработке.
Мне всегда казалось, в Гугле умеют вовремя остановиться и закрыть проект. Дарт опровергает это мнение.
Как он год назад был не нужен, так и сейчас.
Если он, силами гугла появиться в Chrome, или даже в webkit-е, то думаю, все таки, будет нужен
Ага, и придется не только верстку под разные браузеры переделывать, а вообще целиком приложения.
Вообще смешно получается: JS лезет в сторону сервер-сайда, а J — в сторону фронт-енда. Что же будет дальше
Компания Google надеется, что в будущем нативная поддержка Dart появится во всех браузерах.

Слышал, что Apple послала их с Дартом, аргументируя, что содержать две виртуальные среды (для дарта и для js) в одном браузере слишком накладно.
Apple хороши на громкие заявления… и довольно много случаев когда они потом прогибались под рынок.
Особенно это стало заметно, когда они потеряли своего главного идеолога.
Почему они все так хотят придумать что-то свое, но не хотят продвигать развитие самого JS? Финансировать создание спецификации, ее реализации во всех опенсорсных движках? Зачем плодить сущности? Создавать перекресные инструменты? А если для дарта нужна другая VM в браузере, то я тогда вообще не понимаю как его еще не закрыли.
Почему они все так хотят придумать что-то свое, но не хотят продвигать развитие самого JS?

Почему мы строим небоскребы из бетона, метала и стекла, а не из камня и песка или сруба как когда то все строили? Вам же ясно говорят
Он позиционируется как замена/альтернатива Javascript, страдающего от «фундаментальных» изъянов, которые невозможно исправить в следующей версии Javascript или путём выпуска надмножества вроде Typescript

Так уж сложилось, что «под давлением» новых задач появляются новые технологии, а старые технологии, которые хоть и были в свое время хороши, но не годятся для решения этих новых задач, уходят на пенсию. Между нами, время JS настало уже давно. Просто никто не решался проводить этого дедушку на пенсию — ИМХО.
Отправить на пенсию то давно пора, но, есть кто на замену? Не какой-нибудь мелкий мальчуган, которому еще заботливые родители подгузники меняют, а нормальный и достойный претендент? Найдете — покажите, интересно посмотреть.

А JS, хоть и уже не молод, и все чаще можно от него услышать «а вот в наше-то время...», но пока единственный кто может хоть как-нибудь выполнять свою роль. Когда там для голожопого дарта появятся всякие jquery, bootstrap, backbone, less, extjs?

Замене, чтобы из подгузников вырасти надо как минимум родиться и развиваться. А откуда взяться зрелой замене если все «новорожденные» встречаются с «автоматами» наперевес и под шквальным огнем скептиков так и не вырастают? Шанс должен быть, а там бой покажет )
Просто пример: посмотрите на то, что сейчас стало с руби, где бы он был сейчас если бы не ror?
Эм, а разве не Google стоит за V8? Код открыт, движок быстрый, его развитию ничто не угрожает, всё замечательно. Если они хотят делать Dart то пусть делаю на здоровье.

Я не понимаю почему все ненавидят Dart (ну, во всяком случае относятся скептически). «Живи и дай жить другим». Конкуренция — это хорошо/двигатель прогресса/идёт на пользу потребителю.
Потому что это уже пройденный этап. Вот потому и ненавидят.

Вспоминаем конец 90-х — начало 2000.
IE имел лидирующие позиции. И конечно же был и знаменитый Visual Basic. Доля остальных браузеров была ничтожно малой, а Netscape уже загибалась вовсю. Opera тихой была. Возможности JScript были куда скромнее, чем возможности VBasic на тот момент. Грубо говоря получилось тогда «Овцы перебиты, волки голодны, пастуха выгнали».

Сейчас Dart. Вместо того, чтобы совместными усилиями развивать язык, который слава богу работает в большинстве браузеров, Google делает свой.

К чему это приведет? Поясню кратко — опять возродится зоопарк технологий, причем каждая технология будет не до конца проработана. А разгребать все это веб-разработчикам, да и страдать от непонимая («почему всегда работало, а сейчас нет ?») будут пользователи.

Я не против Dart. Я против его «пиара».

Теперь насчет старых технологий. Вы бы еще зарубили Java когда появились мобильные платформы. Почему то у нее есть шансы развиваться как у технологии, а у JavaScript нет?

Фундаментальные изъяны. Это для каких задач нашли фундаментальные изъяны? Для задач переноса какой-нить ERP-системы в браузер?

TypeScript и CoffeeScript мне более симпотичны, хотя бы тем, что в одном проекте, людям не запрещается использовать и JS, при этом сильно не разрушая логическую архитектуру проекта.
Ок, вашу точку зрения я понял. Тем не менее мне кажется несколько некорректным сравнение IE в период «расцвета» и Chrome/Dart.

— У Chrome сейчас и IE тогда разные доли рынка. + Google продвигает Open Source.

— Все мы помнил IE-only ад и не хотим его повторения. Если же он повторится, то виноваты будут сами разработчики. Обманул раз — позор тебе, обманул два — позор мне, обманул три — позор нам обоим.

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

— Google уже внёс огромный вклад в развитие JavaScript и работа продолжается. Тем не менее все пытаются уличить их в раскачивании лодки и заговоре против JS. Ок, мы помним про IE-only ад, но паранойя это не выход.

— Dart имеет транслятор в JavaScript код (да, все мы помним Hello World на 17Кб, но я верю что он станет лучше). Это роднит его с CoffeeScript, TypeScript, etc и исключает ситуацию Chrome-only сайтов (в браузере есть Dart — хорошо, нет — не проблема).

— Если уж вспоминать про ActiveX, то тут стоит опасаться NaCl (но и это технология с открытым кодом).

— Dart это самостоятельный язык со свободной VM, а не надмножество/сахар для JavaScript. Это замечательно. Область его применения не должна ограничиваться браузером (лично я жду появления Node.Dart и/или Dart cli).

— Ну жили/живём же мы при JavaScript / Flash / Java и ничего. Зоопарк технологий и конкурирующих решений никуда и не исчезал: плееры на сайт (html5 с fallback в виде Flash), десятки js-фреймворков, одинаковые плагины для jQuery, хаотичная поддержка браузерами фич.

Мне кажется многих разработчиков устраивает затишье и они не хотят покидать эту зону комфорта. Мы не движемся вперёд, а лишь совершенствуем то что успели накопить. Это хорошо, но зачем же запрещать эксперименты. Ну разрабатывают они Dart как более эффективную альтернативу JS, ну шлифуют инженеры Dartium (это вообще экспериментальная сборка. её не рекомендуют использовать). Они же в Chrome это пока не тащат (в зависимости от того что родится в ходе экспериментов можно будет судить будет это дар или проклятье и паниковать по обстоятельствам). В этом нет ничего плохого и я лишь могу пожелать им успехов.
Подход TypeScript кажется более разумным. Хотя бы потому, что Dart не представляет удобных механизмов интеграции с уже написанным JS кодом, например, использование возможностей того же JQuery или других JS библиотек.
Почему все считают Dart только client-side языком? У него же уже есть VM, в спецификации есть очень интересные вещи, касающиеся взаимодействия потоков, пересылки данных между ними, быстрая десериализация и прочее, что имеет значение только на серверной стороне. Это не coffe-script или TypeScript, тут скорее больше аналогия с чем-то типа Clojure — ЯП, работающий на серверной стороне на одной VM, а на клиентской стороне — транслируется в JS.
почему не python, ruby, go? зачем именно новый язык продвигать в браузер?
А какая принципиальная разница? Я не буду рад, если в хроме будет питон, в опере руби, а в фаерфоксе вообще перл.
Вопрос наверно в тему
Стоит ли писать статьи-уроки для начинающих по Dart'у? Какие вопросы стоит поднять в вводной статье?
Dart это движение в правильном направлении, наряду с GWT и j2objc. Похожесть SDK на Java, чтобы тут некоторые не говорили, это плюс.
Но делать мультиплейерную аркаду на этой штуке мешает отсутствие ByteBuffer. Очень не хочется использовать json для realtime.
Sign up to leave a comment.

Articles