面向对象的设计原则

认识面向对象

1.隔离变化

   面向对象的构建方式更能适应软件的变化,将变化所带来的影响减为最小。

2.各司其职

   面向对象的方式更强调各个类的责任,由于需求变化导致的新增类型不应该影响原来类型的实现。

3.对象是什么

   从语言实现层面,对象封装了代码和数据。
   从规格层面,对象是一系列公共接口。
   从概念层面,对象是某种拥有责任的抽象。

面向对象的设计原则

1.依赖倒置原则(DIP)

   高层模块(稳定)不应该依赖于实现细节(变化),实现细节应该依赖于抽象(稳定)。

2.开放封闭原则(OCP)

   对扩展开放,对更改封闭。
   类模块应该是可扩展的,但是不可修改。

3.单一职责原则(SRP)

   一个类应该仅有一个引起它变化的原因。
   变化的方向隐含着类的责任。

4.liskov替换原则(LSP)

   子类必须能够替换它们的基类。
   继承表达类型抽象。

5.接口隔离原则(ISP)

   不应该强迫客户程序依赖它们不用的方法。
   接口应该小而完备。

6.优先使用对象组合,而不是类继承

   继承在某种程度上破坏了封装性,耦合度高。
   对象组合只要求被组合的对象具有定义良好的接口,耦合度低。

7.封装变换点

  使用封装来创建对象之间的分界层,在分界层一侧修改,不会对另一侧产生不良影响,实现层次间松耦合。

8.针对接口编程,而不是针对实现编程

   不声明具体类型,而是声明为接口类型。
   减少系统各部分的依赖关系,从而实现高内聚松耦合。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值