joh*_*hnc 5 oop anti-patterns
我记得在某处看到过关于此问题的辩论,目前正在考虑删除我正在开发的系统中每个业务对象都继承自的基本对象。它包含一些属性、一些数据库逻辑和一些构造函数逻辑。
这是一种反模式,还是尚无定论?拥有一个可以继承的基础合约会更好吗?这需要在每个对象中完成一定量的样板编码?
编辑:我确实喜欢 dsimcha 并觉得它很好地反映了这个问题,我仍然很高兴听到任何进一步的答案
dsi*_*cha 3
标准的经验法则是仅使用继承来通过多态性为类的用户提供灵活性,如果您想重用其他类的代码,则使用组合。然而,只要你不违反里氏替换原则,它可能还不错。编写大量的样板文件本质上也是一件坏事,因为它掩盖了代码中真正发生操作的部分,并且是反 DRY 的。但是,如果您违反了里氏替换原则,那么这绝对是一个坏主意。
归档时间:
17 年 前
查看次数:
699 次
最近记录: