Какой правильный способ создания классов сущностей в PHP - PullRequest
0 голосов
/ 08 января 2019

Согласно учению, которое я читаю, в нем говорится об использовании

Классы сущностей

что все поля должны быть защищены или закрыты (не публично), и это цитата.

При создании классов сущностей все поля должны быть защищены или приватный (не публичный), с методами получения и установки для каждого (кроме $ id). Использование мутаторов позволяет Doctrine подключаться к вызовам которые манипулируют сущностями так, как если бы вы просто напрямую установить значения с помощью entity # field = foo;

В то время как 6-я редакция продвинутой книги по PHP (одна из самых продаваемых книг по PHP и другим книгам по программированию, написанная этой компанией), я только что прочитал, говорит об этом

В большинстве случаев частная собственность сильно предпочтительнее публичной из них. Однако, в случае классов сущностей, вы должны использовать публичные свойства. Единственная цель класса сущности состоит в том, чтобы сделать некоторые данные имеется в наличии. Нехорошо иметь класс, представляющий автора, если вы даже не могу прочитать имя автора!

Я понимаю, что модель, используемая доктриной, может немного отличаться от книжного подхода, но когда вы видите подобные утверждения, вы задаетесь вопросом, что есть что. Какое из утверждений неверно, а какое из утверждений верно

Весь дом должен просветить меня

...