Мне сказали, что я должен кодировать мои объекты POPO Doctrine для реализации интерфейса. Я понимаю, что лучше всего использовать код для интерфейсов.Должны ли мои объекты Doctrine реализовывать интерфейсы?
Может ли кто-нибудь предоставить мне некоторые преимущества для того, чтобы мои объекты Doctrine реализовали интерфейс. Я хочу убедиться, что я понимаю преимущества этой абстракции, прежде чем тратить время на запись всех моих объектов, реализующих интерфейсы. Ниже приведен пример (не отметить аннотации доктрины примечание включены для простоты):
<?php
class User implements UserInterface()
{
function getName() {
return $this->name;
}
function setName($name) {
$this->name = $name;
}
function addPermission(Permission $permission) {
$this->permissions[] = $permission;
}
}
interface UserInterface()
{
function getName();
function setName($name);
function addPermission(Permission $permission);
}
Вообще говоря, с PHP вы не расширяете интерфейс, вы * реализуете его. Если ваш вопрос связан с преимуществами произвольного класса, реализующего интерфейс, я уверен, что руководство суммирует его довольно хорошо. –
Если кто-то сказал вам, что объекты Doctrine должны реализовывать интерфейсы, вы спрашивали их почему? ':-)' – halfer
Я просил, и я не мог спокойно понять рассуждения. Надеюсь на разъяснения. – Roeland