Dart — чек-лист
Чек-лист самопроверки
- Зачем Google создавала Dart и как роль языка изменилась после появления Flutter?
- Чем Dart VM отличается от "классической" JVM?
- В чём разница между JIT и AOT в Dart?
- Что такое isolate и почему в Dart нет разделяемой памяти между isolates?
- Как устроены microtasks и macrotasks в event loop?
- Где находится точка входа программы на Dart?
- Чем
var,finalиconstотличаются друг от друга? - Какие встроенные типы коллекций есть в Dart?
- Что такое null safety и чем
Stringотличается отString?? - Для чего нужен тип
dynamicи когда его лучше избегать? - Что такое record и чем он отличается от обычного класса?
- Что даёт
sealed class? - Как объявить дженерик-список
List<int>и зачем это нужно? - Чем
==отличается от сравнения по ссылке для объектов? - Какие операторы null-aware вы знаете (
??,?.,??=)? - Чем
~/отличается от/для целых чисел? - Как записать switch expression в Dart 3?
- Что такое guard
whenв ветке switch? - Как сопоставить record по именованным полям в switch?
- Что означает rest-паттерн
...для списка? - Почему в Dart запрещён fall-through между
case? - Чем функция первого класса отличается от "просто подпрограммы"?
- Чем именованные параметры отличаются от позиционных?
- Что такое замыкание в Dart?
- Чем
Futureотличается отStream? - Зачем нужны
asyncиawait? - Когда имеет смысл выносить работу в
Isolate.run? - Как обрабатываются исключения (
try,catch,finally,throw)? - Что делает префикс
_у имени члена класса? - Когда использовать
lateвместо nullable-типа? - Зачем нужен factory-конструктор?
- Чем
implementsотличается отextends? - Для чего применяют
mixinи ключевое словоwith? - Что такое неявный интерфейс класса в Dart?
- Какие шаги нужны для установки Dart SDK и проверки
dart --version? - Что создаёт команда
dart create -t console? - Как запустить консольный проект через
dart run? - Чем
stdoutотличается отstderr? - Как прочитать строку из stdin асинхронно?
- Как прочитать и записать текстовый файл через
dart:io? - Чем
jsonEncode/jsonDecodeполезны без сторонних пакетов? - Что делает
HttpClientи когда его закрывают? - Почему
dart:ioнедоступен в браузерной сборке? - Что такое виджет во Flutter?
- Чем
StatelessWidgetотличается отStatefulWidget? - Зачем вызывают
setState? - Что такое hot reload и чем он отличается от hot restart?
- Где в проекте Flutter лежит основной код и что описывает
pubspec.yaml? - Какие три уровня тестирования предлагает Flutter?
- Как связаны Dart, движок Skia и платформенный embedder?
Материалы по углублённым темам: паттерны и switch, консоль, файлы и HTTP, классы и ООП, Flutter, галерея готовых виджетов (Lab).
Базовый разбор HTTP и HTTPS находится в отдельной статье — HTTP как основа веб-интеграций.