Статьи

Почему Google Dart не достигнет своей цели

Dart — это новый язык программирования Google, предназначенный для создания структурированных веб-приложений. Вы сможете запустить его на сервере, но он также будет работать на клиенте. В браузере

В зависимости от того, что вы прочитали, Google признал и отрицал, что Dart является заменой JavaScript. Однако в ближайшее время Chrome сможет использовать любой язык, и, учитывая выбор, я уверен, что Google предпочел бы, чтобы разработчики использовали решение, которым они управляют.

Сначала я скептически относился к Дарту, но оставлял за собой суждение, пока не стало доступно больше информации. Теперь я могу категорически заявить, что почти наверняка произойдет сбой точно так же, как в Internet Explorer.

Дартс Цели

Dart — это проект с открытым исходным кодом, имеющий следующие цели:

1. Создайте структурированный, но гибкий язык программирования для Интернета.
Отлично. Но что не так со всеми другими структурированными и гибкими языками? Одним из главных преимуществ Интернета является то, что вы можете использовать любой серверный язык, который вам нравится: PHP, C #, VB, Perl, Java, Ruby, Python и т. Д.

Всегда есть возможности для улучшения, но мы избалованы выбором. Дарт не предлагает что-то другое — просто альтернатива.

2. Дарт должен чувствовать себя знакомым и естественным для программистов и, следовательно, легко учиться
Синтаксически, Дарт очень похож на Java, C ++ и C #. Так почему же Google просто не принял один из этих языков? Это сделало бы это еще легче учиться.

3. Сделайте Dart подходящим для всего спектра устройств.
Google заявил, что они «против фрагментированных мобильных платформ» . Разве другой язык не разбил бы его дальше?

Возможно, Google создаст собственную среду выполнения Dart для Android. Возможно, они даже создадут версию для телефонов Windows. А как же Apple — самый успешный производитель смартфонов? Нет шансов.

4. Предоставьте инструменты, которые позволят Dart быстро работать во всех основных современных браузерах.
Будут ли Microsoft, Mozilla, Apple или Opera добавлять нативные клиенты Dart в свои браузеры? Это маловероятно.

Google мог бы создавать плагины для этих платформ, но веб-разработчики не будут писать код Dart, пока у плагина не будет широкой установочной базы. К сожалению, пользователи не смогут установить плагин, пока не будут разработаны привлекательные приложения с использованием Dart. Словить 22.

Компиляция JavaScript

Google на самом деле не нужен плагин Dart, так как они создали компилятор, который переводит код Dart в нативный JavaScript.

Прежде чем вы будете слишком взволнованы, взгляните на скомпилированную программу Dart «Hello World» . Девять строк кода Dart успешно скомпилированы в… 17,259 строк JavaScript.

Я уверен, что ситуация улучшится. Даже сегодня его можно запустить через Google Closure Compiler, чтобы сделать код более эффективным. Но факт остается фактом: нативный JavaScript, написанный наполовину приличным разработчиком JavaScript, всегда побеждает скомпилированный код Dart.

Даже если вы разрабатываете в Dart, вам, вероятно, захочется перейти на JavaScript в определенные моменты, чтобы повысить эффективность. Но если вы уже можете писать JavaScript хорошего качества, зачем вам разрабатывать в Dart? Уловка-22-2.

Показать JavaScript немного любви

Из документации Google ясно, что Dart ориентирован на разработчиков, которым не нравится JavaScript.

Несмотря на то, что JavaScript является самым используемым языком программирования в мире, он является наиболее неправильно понятым. Название не помогает — это ни Java, ни скрипт — но главная причина плохой прессы исходит от профессиональных программистов.

Первоначально JavaScript выглядит немного как C ++ или Java. Разработчики со знанием этих языков изучают руководства по синтаксису класса только для того, чтобы обнаружить, что его не существует. Они приходят к выводу, что JavaScript ужасен, или пытаются использовать классические методы наследования в своем коде.

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

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

Потому что вы не можете бороться с этим

Основная проблема для Dart заключается в том, что JavaScript везде; от скромных мобильных телефонов до Apple iPad, до современных настольных браузеров. Microsoft даже делает ключевые технологии HTML5 и JavaScript для разработки приложений в Windows 8.

Даже если бы Chrome достиг 50% доли рынка, вы бы развивались на языке, который поддерживался везде или только на половине всех устройств? Возможно, у него был бы шанс, если бы он был выпущен десять лет назад, JavaScript был совершенно ужасен или Dart был революционным. Ни одна из них не соответствует действительности.

Я рад, что Google продолжает вводить новшества, но Дарт чувствует себя как шаг назад. Вам может не нравиться JavaScript, ненавидеть HTML и презирать CSS — но, будучи веб-разработчиком, вы не можете избежать их.