设计模式的六大原则学习
来源:互联网 发布:淘宝网艾灸盒 编辑:程序博客网 时间:2024/05/22 03:41
一、开闭原则(Open Close Principle)
就是说对扩展开放,对修改关闭。我们在对程序扩展时,不应去修改原有代码。
因为在修改原有代码时我们可能引入错误的代码,使我们可能不得不对原有的功能重新测试。
二、里氏替换原则(Liskov Substitution Principle)
所有引用基类(父类)的地方必须能透明地使用其子类的对象。在软件中将一个基类对象替换成它的子类对象,程序将不会产生任何错误和异常。
三、依赖倒转原则(Dependency Inversion Principle)
抽象不应该依赖于细节,细节应当依赖于抽象。换言之,要针对接口编程,而不是针对实现编程。
在引入抽象层后,系统将具有很好的灵活性,在程序中尽量使用抽象层进行编程,而将具体类写在配置文件中,这样一来,如果系统行为发生变化,只需要对抽象层进行扩展,并修改配置文件,而无须修改原有系统的源代码,在不修改的情况下来扩展系统的功能,满足开闭原则的要求。
四、接口隔离原则(Interface Segregation Principle)
使用多个专门的接口,而不使用单一的总接口,即客户端不应该依赖那些它不需要的接口。
根据接口隔离原则,当一个接口太大时,我们需要将它分割成一些更细小的接口,使用该接口的客户端仅需知道与之相关的方法即可。每一个接口应该承担一种相对独立的角色,不干不该干的事,该干的事都要干。
五、迪米特法则(Law of Demeter)
一个软件实体应当尽可能少地与其他实体发生相互作用。
如果一个系统符合迪米特法则,那么当其中某一个模块发生修改时,就会尽量少地影响其他模块,扩展会相对容易,这是对软件实体之间通信的限制,迪米特法则要求限制软件实体之间通信的宽度和深度。迪米特法则可降低系统的耦合度,使类与类之间保持松散的耦合关系。
六、合成复用原则(Composite Reuse Principle)
尽量使用对象组合,而不是继承来达到复用的目的。
在面向对象设计中,可以通过两种方法在不同的环境中复用已有的设计和实现,即通过组合/聚合关系或通过继承,但首先应该考虑使用组合/聚合,组合/聚合可以使系统更加灵活,降低类与类之间的耦合度,一个类的变化对其他类造成的影响相对较少
0 0
- 设计模式的六大原则学习
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 设计模式的六大原则
- 给结构体中string赋值时,程序被中断
- 坚果手机如何获取root权限
- 小学生四则运算的出题程序,这回用的是android写的
- Invalidate/InvalidateRect/UpdateWindow/RedrawWindow区别与联系
- 解读TCP 四种定时器
- 设计模式的六大原则学习
- 宏的高级使用--##,__VA_ARGS__, __FILE__, __FUNCTION__等
- @date2016-03-14 22:44(软件工程男的日常)
- CLOSE_WAIT状态的原因与解决方法
- Subset sequence
- 博客开张
- Java多线程回顾2:线程的生命周期
- MXIC旺宏替换Spansion飞索 NOR and NAND目录
- 百人团队敏捷转型日记 第二集 持续集成要一步步来