От Python к Dart - День 1
День 1, знакомимся с Dart
Многие разработчики во время своей работы развиваются в определённой области и не всегда рассматривают технологии находящиеся на периферии их профессиональных задач. Однако, со временем кругозор начинает расширятся, разработчики серверных приложений начинают смотреть в сторону клиентских приложений и наоборот; использующие интерпретируемые языки поглядывают в сторону компилируемых; иные же смотрят совсем в иные области проявляя интерес в области DevOps. Дабы укротить интерес некоторых из них, мы поговорим о том, как может помочь язык Dart разработчикам Python и зачем им это нужно.
Что за язык такой?
Dart — это компилируемый язык родившийся в недрах компании Google более 10 лет назад. В какой-то момент времени он позиционировался как альтернатива JavaScript для разработки клиентских приложений, позже изменив своё направление в сторону универсального языка как для клиентских приложений с помощью Flutter, так и серверных приложений.
Dart — язык с объектно-ориентированной парадигмой, основанный на классах, со сборщиком мусора синтаксически похожий на C, C# и JavaScript. Приложения на Dart могут быть скомпилированы в бинарный код как для десктопных x86-систем, так и для мобильных ARM-процессоров; могут быть запущены в виртульной машине, тем самым обеспечивая hot-reloading и, как следствие, быструю разработку; и даже веб-приложения могут быть реализованы с помощью Dart и Flutter.
Устанавливаем Dart
Для пользователей многих ОС не требуется каких-либо шагов чтобы использовать Python, он изначально установлен в macOS, большинстве, если не во всех, дистрибутивов на базе Linux и *BSD и только пользователям Windows потребуется скачать и запустить установщик. С Dart дела обстоят иначе.
Самым простым вариантом попробовать Dart будет использование DartPad - редактора доступного онлаайн и позволяющего писать небольшие приложения.
Для установки на локальный компьютер нужно зайти на сайт https://dart.dev/get-dart и пройти по одному из путей в соответствии с вашей операционной системой. Так, для пользователей macOS использующих Homebrew достаточно воспользоваться командой:
brew install dart
Альтернативным вариантом может стать установка Flutter, вместе с которым в обязательно порядке будет установлен и Dart.
CLI-утилита dart
После установки вам станет доступна консольная утилита dart
, с помощью которой можно выполнять множество действий помогающих в разработке:
- создавать новые проекты с помощью
dart create
- запускать их в виртуальной машине с помощью
dart run
- компилировать в машинных код (ahead-of-time) с помощью
dart compile
- форматировать исходный код с помощью
dart format
- генерировать документацию с помощью
dart doc
- и многое другое.
При использовании Python мы привыкли к установке зависимостей с помощью пакетов pip или poetry, но может ли Dart предложить что-то подобное? Ответом будет - да, Dart несёт с собой утилиту dart pub
которая позволяет с легкостью устанавливать, обновлять,публиковать пакеты и многое другое.
Hello Dart
Знакомство с Dart не было бы полноценным, если бы мы не попробовали написать простейшее приложение на этом языке. Давайте исправим это упущение.
// Определим функцию void sayHi(String name) { print('Hello, $name.'); // Выводит в консоль сообщение. } // С этой функции приложение начинает свою работу. void main() { var name = 'Pythonista'; // Определяем и инициализируем переменную. sayHi(name); // Вызываем функцию. }
Как можно заметить программа на языке Dart стартует своё выполнение с функции main
. В ней мы объявляем переменную name
, её тип будет выведен автоматически исходя из присвоенного значения. После чего, вызываем функцию, передавая в неё переменную. В отличие от Python Dart не опирается на отступы и использует фигурные скобки для отделения блоков кода, а так же точки с запятой для обозначения окончания выполняемых инструкций. В следующих главах мы рассмотрим язык в подробностях в свете сравнения его с Python.
Что дальше?
А дальше мы научимся создавать проекты с помощью утилиты dart
и рассмотрим подробно иные её возможности.