Что нужно знать про var, dynamic и Object? во Flutter/Dart?
Что хотят услышать интервьюеры:
Коротко: var выводит тип на этапе компиляции, dynamic отключает статические проверки, а Object? сохраняет типовую безопасность для любого значения.
Ответ:
Где применяется:
- понимание статической типизации Dart
- осознанный выбор dynamic только на границах системы
- безопасные приведения через is/as
Пример:
var count = 1;
dynamic raw = json['id'];
Object? value = raw;
if (value is int) print(value + 1); Как отвечать на собеседовании: объясните назначение, границы применения и почему это лучше альтернативы в конкретном сценарии. Типичная ошибка: злоупотребление dynamic скрывает ошибки до runtime.