面向对象编程的原则
2016-03-31 01:56
232 查看
面向对象的原则 —— 高内聚 低耦合(最终目的)
——单一职责原则(SRP Single Responsibility Principle)
类的职责单一 对外只提供一种功能
——开放封闭原则(OCP Open Close Principle)
类的改动是通过增加代码进行的 而不是修改源代码
——依赖倒置原则(DIP Dependence Inversion Principle)
依赖抽象接口 不要依赖具体的实现类
——接口隔离原则(ISP Interface Segegation Principle)
不要把所有的操作都封装到一个接口中去
——里氏替换原则(LSP Liskov Substitution Principle)
任何抽象类出现的地方都可以用其实现类进行替换 实际上就是虚拟机制
——优先使用组合而不继承原则(CARP Composite/Aggregate Reuse Principle)
如果使用继承 会导致父类的任何变换都可能影响到子类的行为
如果使用对象组合 就可以降低这种依赖关系
——迪米特原则(LOD Law of Demeter)
一个对象应当对其他对象尽可能少的了解 从而降低各个对象之间的耦合 提高系统的可维护性(黑盒原理)
——单一职责原则(SRP Single Responsibility Principle)
类的职责单一 对外只提供一种功能
——开放封闭原则(OCP Open Close Principle)
类的改动是通过增加代码进行的 而不是修改源代码
——依赖倒置原则(DIP Dependence Inversion Principle)
依赖抽象接口 不要依赖具体的实现类
——接口隔离原则(ISP Interface Segegation Principle)
不要把所有的操作都封装到一个接口中去
——里氏替换原则(LSP Liskov Substitution Principle)
任何抽象类出现的地方都可以用其实现类进行替换 实际上就是虚拟机制
——优先使用组合而不继承原则(CARP Composite/Aggregate Reuse Principle)
如果使用继承 会导致父类的任何变换都可能影响到子类的行为
如果使用对象组合 就可以降低这种依赖关系
——迪米特原则(LOD Law of Demeter)
一个对象应当对其他对象尽可能少的了解 从而降低各个对象之间的耦合 提高系统的可维护性(黑盒原理)
相关文章推荐
- 设计模式之 抽象工厂模式的扩展(C++实现)
- Java并发编程:volatile关键字解析
- Qt17 load sqlite table data to qtableview
- Java并发编程:深入剖析ThreadLocal
- QT16 delete data from sqlite database with pushbutton
- VC++ 绘制简单电子元件
- Qt15 Update a data from Sqlite database with pushbutton
- BAT执行PHP文件(区别于上一篇)
- Java字符串详解
- Thread详解11:ThreadLocal的使用
- Java并发编程:同步容器
- BAT执行PHP
- 不用MWPhotoBrowser,自定制图片浏览器+过场动画代码,超简单!get
- 初识PHP之一个注释埋下的坑!
- Java ConcurrentModificationException异常原因和解决方法
- java反编译命令javap
- 第60课:使用Java和Scala在IDE中实战RDD和DataFrame动态转换操作学习笔记
- BeanFactoryPostProcessor和BeanPostProcessor区别和应用场景
- vsftpd给root设置访问权限
- QT14 how to save data in sqlite database with pushbutton