包含标签 LSP articles

合成复用原则

定义 合成复用原则(Composite Reuse Principle,CRP)又叫组合/聚合复用原则(Composition/Aggregate Reuse Principle,CARP):它要求在软件复用时,要尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。 如果要使用继承关心,必……

Continue reading

迪米特法则

定义 迪米特法则(Law of Demeter):又称最少知识原则(Least Knowledge Principle,LKP),只与你的直接朋友交谈,不跟“陌生人”说话(Talk only to your immediate friends and not to strangers)。其含义是:如果两个软件实体无须直接通信,那么就不应当发生直接的相互调用,可以通过第三方转发……

Continue reading

接口隔离原则

定义 接口隔离原则(Interface Segregation Principle,ISP)要求程序员尽量将臃肿庞大的接口拆分成更小和更具体的接口,让接口中只包含客户感兴趣的方法。定义:客户端不应该被迫依赖于它不适用的方法(Clients should not be forced to depend on methods they do not use)。该原则还有另外一个定义:一个类对另一……

Continue reading

单一职责原则

定义 单一职责原则(Single Responsibility Principle,SRP)又称单一功能原则:规定一个类应该且仅有一个引起它变化的原因,否则类应该被拆分。 该原则提出对象不应该承担太多职责,如果一个对象承担了太多的职责,至少存在以下两个缺点: 一个职责的变化可能会削弱或者抑制这个类实现其他职责的能力……

Continue reading