На этом слайде мы создадим интерфейс IView и задействуем его в классе Game. Класс Game теперь не зависит от конкретной реализации его представления. Попробуйте сделать то же самое через абстрактный класс.
Научился: Создал интерфейс IView с заголовками двух методов, унаследовал ViewBasic и ViewColor от IView.
Внутри класса Game использовал IView, попереключал представления. Трудности: Создавать ещё одно представление, сделать всё то же самое через абстрактный класс
Научился: Реализовал абстрактный класс aView, реализующий интерфейс IView.
Реализовал ещё один ViewInvers, которые меняет местами фон и шрифт, получается фон белый, шрифт чёрный, см. скриншот.
Использование абстрактного класса полезно для устранения дубликатов кода.
Всё отлично, идём дальше.