《大话设计模式》连续三章讲述了三个原则,把这些重要语录摘抄下来,供我日后好好理解。
单一职责原则(Simple Response Principle):就一个类而言,应该仅有一个引起他变化的原因。
当一个类承担了过多的职责,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其它职责的能力。这种耦合会导致脆弱的设计,当设计变化时,设计会遭受到意想不到的破坏。
软件设计真正要做的事,就是发现职责,并把这些职责相互分离。
判断是否职责单一的方法:如果你想到多于一个动机去改变一个类,这个类就具有多于一个的职责,就应该对类进行职责分离。
开放-封闭原则:软件实体(类,模块,函数等),应该可以扩展,但不可修改。
即:对于扩展是开放的(Open for extension),对于更改是封闭的(Closed for modification)。
一个较好的实践方式是等到变化发生时立即采取行动。在我们最初编写代码时,假设变化不会发生。当变化发生时,我们就创建抽象来隔离以后发生的同类变化。
依赖倒转原则:抽象不应依赖于细节,细节应该依赖于抽象。
- 高层模块不应依赖与低层模块。两个都应该依赖抽象。
- 抽象不应依赖于细节。细节应该依赖于抽象。
高层模块不应依赖于底层模块==高层不应依赖调用低层模块,我的理解是高层依赖于低层的接口,这样能做到高层类的复用。
里氏代换原则:子类别必须能够替换掉他的父类别。
即:把父类都替换为他的子类,程序的行为没有变化。
只有当子类可以替换掉父类,软件单位的功能不受影响时,父类才能真正被复用,而子类也能够在父类的基础上增加新的行为。
程序所有的依赖关系都终止于抽象类或接口,那就是面向对象设计,反之就是过程化设计。
分享到:
相关推荐
单一职责原则(SRP) 单一职责原则(SRP)是面向对象设计的五个基本原则之一。该原则规定,一个类应当只有一个引起它变化的原因。换言之,一个类应该只有一个职责,避免一个类承担多个职责,从而降低类的耦合度和...
面向对象 设计原则 单一职责原则--SRP 开放封闭原则--OCP Liskov替换原则--LSP 依赖倒置原则--DIP 接口隔离原则--ISP
单一职责原则(Single Responsibility Principle, SRP)、开闭原则(Open-Closed Principle)、里式替换原则(Liskov Substitution Principle)、接口隔离原则(Interface Segregation Principle)和依赖倒置原则...
1 依赖倒置原则-Dependency Inversion Principle (DIP) 2 里氏替换原则-Liskov Substitution Principle (LSP) 3 接口分隔原则-Interface Segregation Principle (ISP) 4 单一职责原则-Single ...
- **单一职责原则**:每个类或模块应有一个明确的职责,避免职责过多导致复杂性增加。 - **开闭原则**:软件实体应对扩展开放,对修改关闭,意味着应通过扩展而不是修改现有代码来实现新功能。 - **里氏替换原则*...
六大原则分别是:单一职责原则、里氏替换原则、依赖倒置原则、接口隔离原则、迪米特法则和开闭原则。 1. 单一职责原则(Single Responsibility Principle) 单一职责原则是指一个类只负责一项职责。问题来源于类 T...
开闭原则(Open-Closed Principle,简称OCP)是面向对象设计中的一个核心原则,它由Bertrand Meyer在1988年提出,并被收录在SOLID(单一职责原则、开闭原则、里氏替换原则、接口隔离原则、依赖倒置原则)这五大设计...
3. 依赖倒置原则(Dependency Inversion Principle,DIP):高层次的模块不应该依赖于低层次的模块,两者都应该依赖于抽象。抽象不应该依赖于细节,细节应该依赖于抽象。这通常通过使用接口或抽象类来实现。 4. ...
这六个原则包括单一职责原则(Single Responsibility Principle, SRP)、里氏替换原则(Liskov Substitution Principle, LSP)、依赖倒置原则(Dependence Inversion Principle, DIP)、接口隔离原则(Interface ...
php 设计模式六大原则 单一职责原则 里氏替换原则 依赖倒置原则 接口隔离原则 迪米特法则 开闭原则 word版
而"SRP"文件则可能提供了一些具体的编程案例,展示了在Java、Python或C#等语言中如何实现SRP,以及在实际项目中如何平衡SRP与其他设计原则的关系,如开闭原则、依赖倒置原则等。 总的来说,单一职责原则是软件设计...
依赖倒置原则 单一职责原则 接口隔离原则 迪米特法则 合成复用原则 3、设计模式 创建型模式(Creational Pattern) 单例模式(Singleton Pattern) 工厂模式(Factory Pattern) 抽象工厂模式(Abstract Factory Pattern) ...
Martin提出,包括单一职责原则、开放封闭原则、里氏替换原则、接口隔离原则和依赖倒置原则。 依赖倒置原则的核心思想是: 1. 高层模块不应该依赖于低层模块,两者都应该依赖于抽象。 2. 抽象不应该依赖于细节,...
1.单一职责原则: 不要存在多于一个导致类变更的原因 2.里氏替换法则:子类可以扩展父类的功能,但不能改变父类原有的功能 3.依赖倒置原则:面向接口编程 4.接口隔离原则: 客户端不应该依赖它不需要的接口;一个类对...
- **依赖倒置原则(DIP)**:高层模块不应该依赖于低层模块,两者都应该依赖于抽象。这样,当底层实现变化时,只需调整抽象层,不影响上层应用。 3. **设计模式中的OCP**: - **策略模式**:定义一系列算法,并将...
以上介绍的五种面向对象设计原则——单一职责原则、里氏替换原则、依赖倒置原则、接口隔离原则和开闭原则,都是面向对象编程领域中非常重要的指导思想。遵循这些原则可以帮助开发者构建出更加健壮、可维护和易于扩展...
这些原则包括开闭原则、里氏替换原则、单一职责原则、接口隔离原则、依赖倒置原则、迪米特原则和组合/聚合复用原则。 1. 开闭原则(Open-Closed Principle) 开闭原则是指在编写代码时,应对扩展开放,对修改关闭...
详细介绍了设计模式六大原则,配有示例代码和图片,有开闭原则,单一职责原则,里氏替换原则,依赖倒置原则,接口隔离原则,迪米特法则等等。
本文主要探讨了几个关键的设计原则,包括单一职责原则、开闭原则、里氏代换原则、依赖倒置原则以及接口隔离原则。这些原则是面向对象设计的基础,有助于提升软件的灵活性和可维护性。 1. **单一职责原则 (SRP)**:...
这些原则包括单一职责原则、开放封闭原则、里氏替换原则、最少知识原则、接口隔离原则和依赖倒置原则等。 1. 单一职责原则(Single Responsibility Principle - SRP) 单一职责原则是指一个类应该只有一个原因去...