PANOV_DEV
@PANOV_DEV

Нужно ли использовать interface?

Есть класс ValutaManager в __construct у меня добавление объектов:
class ValutaManager {
   private $valuta = [];

   public function __construct() {
      $this->valuta["rub"] = new RubMoney();
      $this->valuta["uah"] = new UahMoney();
      $this->valuta["eur"] = new EurMoney();
   }
}

Так же, во всех этих классах (RubMoney, UahMoney, EurMoney) у меня имеется метод getName() - он возвращает мне название валюты.

Так же, у меня сам метод getName() вызывается в ValutaManager.

Нужно ли создавать interface Money и указывать его в каждом классе Uah, Rub, Eur?

Можно ведь его не указывать и будет работать так же, как и запланировано.
  • Вопрос задан
  • 215 просмотров
Пригласить эксперта
Ответы на вопрос 2
ipatiev
@ipatiev Куратор тега PHP
Потомок старинного рода Ипатьевых-Колотитьевых
Нет, ничего указывать не надо.
Тут и без интерфейсов получатся отличные самолёты из соломы и палок.
Ответ написан
Newto
@Newto
Интерфейсы используются для структуризации вашего кода. Не потому что надо, а потому что это вносит порядок в разработку. Вы можете не использовать интерфейс и тогда в каждом вашем классе можно будет делать всё что угодно. А можно использовать интерфейс, тем самым обязывая соблюдать определённые правила структуры. Даже один разработчик придумав некую структуру кода сегодня, может забыть/забить на неё через какое-то время, а если их несколько, то тем более, тем самым превращая программу в бардак. В общем это вопрос порядка, а не обязательности.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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