![]() |
1
15
仅负责维护业务对象的应用程序的一部分应该意识到原则的存在。这一部分不必100%基于教义。
一定地。代码更易于阅读、理解和维护。
实际上,教义的基本原理很简单。对于小型、中型甚至一些大型应用来说,这是一个非常好的选择。 教义不是一切的答案,有时也有点问题。但是对于典型的任务来说,它是非常有用的。我是目前最适合PHP的ORM/ODM。 |
|
2
2
我想对克罗辛的回答补充几点,但不幸的是,我不能发表评论。它们在这里:
|
|
3
0
我想在格基里尔的回答中再加一点。缺少对magic getter/setter方法的支持是一个弱点,IMHO,而不是优势。如果您曾经滚动过几十页相同的getter/setter,您将意识到这些方法是一个巨大的空间浪费(更不用说编译时间了)。没有人会意外地设置对象变量,setter也不会阻止您这样做。。。当您想更改属性时,只需调用setter(setter是如何“保护”属性的——如果您要进行一次打印并直接设置错误的属性值,您将进行相同的打印并调用错误的setter)。对于setter或getter来说,除了获取或设置属性之外,很少执行其他操作。如果必须执行特殊操作才能设置或获取属性,则该属性应为方法(请参见 http://www.yegor256.com/2014/09/16/getters-and-setters-are-evil.html ),或者应该重构代码,或者应该调用属性验证函数(通常在创建对象时)。这是困扰OO世界的未经挑战的真理之一。在你发布标准收到的智慧回复之前考虑一下。 |