Я программист на Java в течение последних 6 лет, и с начала этого года я увлекся программированием игр. Поэтому я подумал, что начинать с популярной игры - это хорошая идея, и я реализовал игру Ms. Pac-Man на Java. Я могу сказать, что моя реализация примерно на 90% похожа на оригинальную игру, и я старался использовать как можно больше шаблонов дизайна и лучших практик, так как это был всего лишь личный проект, чтобы научиться кодировать основные 2D-игры.
Теперь, когда я закончил кодирование, я понял, что у меня 19 интерфейсов и только 17 классов! Поэтому я начинаю задумываться, не злоупотребляю ли я интерфейсами.
Вот пример нескольких классов / интерфейсов, которые я использую:
Класс - FullGame (реализует FullGameInterface и FullGameObservable)
Класс - View1 (реализует FullGameObserver)
Интерфейс - FullGameInterface (основные функциональные методы: возобновление, пауза, воспроизведение и т. Д.)
Интерфейс - FullGameObservable (позволяет регистрировать представления для уведомления об обновлении)
Интерфейс - FullGameObserver (реализован в 2 различных видах игры для получения уведомлений)
Я злоупотребляю интерфейсами?
Каково ваше мнение?