Stack Overflow问题的答案表明,特定框架违反了简单明了的OOP规则:单一责任原则(SRP).
单一责任原则真的是OOP的规则吗?
我对面向对象编程的定义的理解是"使用对象及其行为来创建软件的范例".这包括以下技术:封装,多态和继承.
现在不要误解我的意思 - 我认为SRP是大多数优秀OO设计的关键,但我觉得有些情况下这个原则可以而且应该被打破(就像数据库规范化规则一样).我积极推动SRP的好处,我的绝大多数代码都遵循这一原则.
但是,它是一个规则,因此暗示它不应该被打破吗?
最近我听说OOP(Java)有9条规则.我只知道四个是抽象,多态,继承和封装.OOP还有更多规则吗?