面向对象的设计原则

面向对象的设计原则:
单一职责原则
开闭原则
里氏替换原则
依赖注入原则
接口分离原则
迪米特原则
优先使用组合而不是继承


1.单一职责原则(SRP)
single Responsibility Principle
每个类只有一个职责,对位只提供一个功能
2.开闭原则(OCP)
open for Extension ,close for Modifiicational
核心思想:一个对象对扩展开放,对修改关闭。对类的修改是通过增加代码进行的,而不是改动现有的代码
这需要借助于抽象和多态,把可能变化的内容抽象出来,从而使抽象的部分保持相对的稳定,而实现层是可以修改和扩转的
3.里氏替换原则(LSP)
Liskov Substitution Principle
任何出现父类的地方都可以用它的子类去代替
核心思想就是合理的使用继承,而不是滥用
4.依赖注入原则(DIP)
Dependence Inversion Principle
核心思想是要依赖与抽象,而不要依赖与具体实现。即面向接口编程,而不是针对实现编程。
5.接口分离原则(ISP)
Inteface Segregation Principle
核心思想:不要迫使客户程序依赖与他们不需要的方法。通俗的说就是一个借口不要担负太多的行为,一个借口只对外提供一种行为。
6.迪米特原则(LOD)
Law of Demeter
核心思想:一个对象尽可能少的了解其他对象。降低对象之间的耦合,模块与模块之间通过接口来通信,而不理会接口内部的工作原理
7.优先使用组合而不是继续(CARP)
composite/Aggregate Reuse Principle

抽象和接口的区别:
抽象类是对一组具有相同属性和方法的逻辑上有关系的事物的一种抽象  is a   的关系
接口是对一组具有相同属性和方法的逻辑上不相关的事物的一种抽象    like a 的关系

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值