Чем abstract class и interface class отличается от mixin?

FlutterMiddle+: проектирует решение с учетом lifecycle, ошибок и поддержкиDart CoreТеорияabstract-classdartdart-coreinterfaceoop

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

Отличие от mixin: abstract class и interface class обычно используют, когда нужна задача из контекста «OOP», а mixin применяют в другом уровне абстракции или при другой сложности.

Ответ:

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

  • интерфейсы полезны для тестирования
  • абстрактный класс может иметь общую реализацию
  • оцените стоимость поддержки, тестируемость и понятность для команды

Ошибка: выбирать инструмент по привычке, а не по требованиям конкретного flow. Сильный ответ: приведите пример, когда abstract class и interface class уместен, и пример, когда лучше выбрать mixin.

Источники

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