Чем Theme, ThemeData и Material 3 отличается от hardcoded colors?

FlutterMiddle: уверенно применяет в рабочем проекте, видит риски и тестируемостьFlutter CoreТеорияdesign-systemflutterflutter-corematerial3themetheming

Что хотят услышать интервьюеры:

Отличие от hardcoded colors: Theme, ThemeData и Material 3 обычно используют, когда нужна задача из контекста «Theming», а hardcoded colors применяют в другом уровне абстракции или при другой сложности.

Ответ:

Как выбирать:

  • тема должна быть единым источником дизайн-токенов
  • поддерживает light/dark
  • оцените стоимость поддержки, тестируемость и понятность для команды

Ошибка: выбирать инструмент по привычке, а не по требованиям конкретного flow. Сильный ответ: приведите пример, когда Theme, ThemeData и Material 3 уместен, и пример, когда лучше выбрать hardcoded colors.

Источники

Похожие вопросы