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

Нужен ли мне Dart?

Время на прочтение 3 мин
Количество просмотров 13K
Автор оригинала: Matthew Butler
Я люблю Dart, это очень мощный язык для написания как клиентской, так и серверной части. На нём можно создавать и html-странички и html-игры, с использованием только DOM или с использованием WebGL/Canvas. Можно писать консольные текстовые игры, однажды, я создал на Dart многопользовательскую консольную игру, которая работала через telnet. Я использовал этот язык для создания скриптов, опроса и управления удалённым оборудованием и хранения результатов в БД, на основе которых можно было потом получить красивые графики.

Но Dart не панацея и отвечая на вопрос в заголовке статьи: всё зависит от того, что нужно сделать. Например, вы не можете написать на нём операционную систему. Вы не можете получить ту же производительность что даёт C при написании игр(тех, что не для браузера). Он не оптимизирован для обработки больших научных данных. Dart это просто инструмент со своим назначением. Вы же не станете ловить акулу сачком для бабочек.

Javascript может делать всё то же самое, что и Dart. И у JS есть преимущество в количестве готовых библиотек. Я бы советовал их избегать при изучении JS, использование библиотек новичками может привести к тому, что потенциальный программист будет знать как писать на jQuery, но не как на JS, и в конечном итоге к плохой производительности разработанных сайтов. Мне уже доводилось исправлять подобные работы.

При использовании только стандартных библиотек Dart имеет преимущество перед JS прямо из коробки. Многие API уже учитывают различия в браузерах, в то время как JS требует индивидуального подхода(к счастью сейчас это уже не такая большая проблема, которой она была когда Dart только вышел). Функционал стандартных библиотек в Dart даёт такие возможности, которых нет в чистом JS и для получения которых нужно использовать сторонние библиотеки. Которые могут конфликтовать между собой или изменять поведение JS таким образом, что другие библиотеки станут вести себя непредсказуемым образом.

У Dart с конфликтами всё проще. Во первых, самих библиотек меньше, а во вторых есть стандартные механизмы обхода конфликтов. В меньшем количестве библиотек есть и свои плюсы, например, вам нужно рассмотреть меньше разных вариантов чтобы подобрать именно тот, что подойдёт вашему проекту.

И решающий фактор, который повлияет на решение стоит ли Dart вашего времени, это сообщество разработчиков. JS уже давно собирает людей вокруг себя, интернет наполнен уроками, форумами, примерами и главное людьми, которые его используют. Dart с другой стороны это в основном сообщество людей, для которых этот язык не был первым, и оно относительно маленькое. Некоторые не могут справиться с первыми трудностями в изучении и забрасывают язык.

Из-за того, что сообщество Dart меньше, и из-за того, что его последователи опытнее, существует меньше уроков и в частности меньше тех, уроков, которые нацелены на новичков в программировании. Существуют книги и статьи, но их количество ничтожно в сравнении с JS. Этот минус уравновешивается тем, что сообщество Dart крайне лояльно своему языку и всячески его пропагандирует. Из всех сообществ, что я встречал, сообщество Dart самое открытое и гостеприимное.

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

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

P.S. Я невероятно пристрастен относительно Dart. Я могу с уверенностью сказать, что моя жизнь изменилась благодаря Dart. Всё потому, что я был одним из первых, кто внедрил язык в рабочий процесс, я был в сообществе с самого его начала, и получил такие возможности, которых не было бы без Dart. Я сделал свой вклад в SDK и документацию на начальной стадии. У меня был шанс попасть на собеседование на должность, связанную с Dart, и в данный момент полный рабочий день я работаю с этим языком.
Теги:
Хабы:
-5
Комментарии 16
Комментарии Комментарии 16

Публикации

Истории

Работа

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн