О разделе
Длинные листинги (от ~15 строк) вынесены в каталог code.spirzen.ru и подгружаются в статьях через ExternalCodeEmbed — так HTML энциклопедии не раздувается, а код остаётся с подсветкой, вкладками и сериями "шаг 1…N". Короткие фрагменты (одна строка, пара выражений) по-прежнему прямо в markdown. Диаграммы mermaid и интерактив — на месте или в play.spirzen.ru.
Dart — язык от Google — статическая типизация, null safety, async/await и изоляты (isolates) вместо разделяемой памяти между потоками. Flutter — UI-фреймворк на Dart; язык при этом самостоятелен (консоль, HTTP, скрипты).
В разделе — история и runtime, синтаксис, типы, управление, async, паттерны Dart 3, ООП, консоль и HTTP, Flutter, чек-лист. Сначала Dart как язык, затем Flutter.
Сначала: Что такое код и как он работает — общая база — код, блок кода, компиляция и интерпретация, исходный, байт- и машинный код; в этом разделе — синтаксис и особенности языка.
Перед классами и ООП: парадигмы и ООП в разделе "Код".
Рекомендуемый маршрут
| Шаг | Материал | Зачем |
|---|---|---|
| 1 | История → Runtime | VM, isolates, event loop |
| 2 | Основы → Синтаксис → Типы | main, null safety |
| 3 | Управление → Паттерны Dart 3 | switch expressions |
| 4 | Первая программа → Async | SDK и dart run |
| 5 | ООП → Консоль и HTTP | Без Flutter |
| 6 | Flutter → галерея виджетов (Lab) → Чек-лист | UI, практика, самопроверка |
Мобильный контекст: раздел мобильных приложений. Практика UI — Flutter — готовые виджеты.
Прочитали Flutter — закрепите на галерее виджетов — счётчик, формы, ListView и Navigator с разбором каждой строки.
Зачем этот раздел
Подборка по Dart в энциклопедии: синтаксис, первая программа и смежные темы. Выберите один язык для старта, пройдите маршрут до первой рабочей программы — затем переходите к следующему языку или стеку.
С чего начать
| Шаг | Материал | Зачем |
|---|---|---|
| 1 | Первая программа | Запуск и синтаксис |
| 2 | Flutter · готовые виджеты (Lab) | Экраны с разбором кода |
Частые ошибки при старте
| Ошибка | Что делать |
|---|---|
| Прыжки между языками | Закройте одну "первую программу", потом сравнивайте |
| Код без запуска | Выполните пример локально |
| Сразу большой фреймворк | Сначала база раздела, потом REST/UI |
Что попробовать
- Шаг 1 из таблицы.
- Три непонятных термина — найдите статьи в оглавлении раздела.
- Другой язык — только после своей рабочей первой программы. Для UI на телефоне — Flutter и галерея виджетов.
Play ITЗагрузка интерактивного демо…
Play ITЗагрузка интерактивного демо…
История языка Dart
История Dart - возникновение языка в Google и его развитие как основы для Flutter-экосистемы.
Классы и ООП в Dart
Инкапсуляция через _, late, конструкторы, factory, const, абстрактные классы, миксины и интерфейсы в Dart.
Простые приложения на Dart
Простые приложения на Dart — CLI, файлы, JSON и минимальный HTTP на dart:io.
Синтаксис и пунктуация в Dart
Dart выглядит как Java или C#, но есть свои привычки: точка с запятой в конце строки не обязательна, строки в "...", многострочные литералы '''.
Основы языка Dart
Основы Dart - точка входа `main`, базовый синтаксис и старт построения приложений на языке.
Архитектура платформы Dart
Runtime Dart — система типов, isolates, event loop, JIT/AOT, сборка мусора, SDK и связка с Flutter.
Flutter
Flutter - экосистема Dart для кроссплатформенной UI-разработки, сборки и тестирования приложений.
Provider и Riverpod во Flutter
Управление состоянием во Flutter — Provider (ChangeNotifier) и Riverpod (ProviderScope, ref.watch), когда что выбрать и минимальные примеры.
Типы данных и безопасность типов
Типизация, набор правил определения типа данных значений языка.
Управляющие конструкции и операторы Dart
Условия, циклы, switch, арифметика, логика и null-aware операторы Dart — с примерами для Dart 3.
Функции и асинхронность
Функция — это именованный фрагмент кода, который принимает входные данные, выполняет определённую последовательность действий и может возвращать результат.
Первая программа на Dart
Гайд по установке и настройке с написанием первой программы и её запуском.
Паттерны и switch в Dart 3
Switch expressions, сопоставление с образцом для record, списков, Map и sealed-типов — исчерпывающий разбор вариантов в Dart 3.
Консоль, файлы и HTTP в Dart
Консольный ввод-вывод, работа с файлами, JSON и базовый HTTP-клиент и сервер через dart:io — Dart вне Flutter.
Dart — итоги
Краткие итоги раздела Dart — VM, null safety, async и Flutter.
Dart — чек-лист
Вопросы для закрепления раздела Dart — от основ языка до Flutter, паттернов и dart:io.
Dart — о разделе
Dart — язык от Google: статическая типизация, null safety, async/await и изоляты (isolates) вместо разделяемой памяти между потоками.
Базовый разбор HTTP и HTTPS находится в отдельной статье — HTTP как основа веб-интеграций.
В подборках
Статья входит в тематические подборки и блок "С чего начать?" на главной. Соседние шаги того же маршрута:
Бэкенд и серверная разработка — Nim — о разделе, R — о разделе, Zig — о разделе, Julia — о разделе, Elixir — о разделе, Bash — о разделе.