开放封闭原则

什么时开放封闭原则?

什么是依赖倒置原则?

什么是高类聚低耦合原则?

前言

​ 一国两制: 小平同志在香港回归问题上提出了一国两制,独到之处是? 大陆的社会这一制度不能修改,而港澳

的资本主义也根深蒂固,强行修改也不合理。这种不可修改(香港的资本主义修改成社会主义),但是可以扩展的思

想。 ——开放封闭原则

概念 --开放封闭

是指软件实体(类、模块、函数等)应该可扩展,但是不可修改。

​ 对扩展开放,对更改封闭

		我们在做任何系统的时候,,都不要指望系统一开始时候就需求明确,不会在发生变化,这是不科学的,

而既然需求一定会变化,那么如何在面对需求变化时,设计的软件可以相对容易的修改,不至于说,新需求一来,

就要把这个程序推到重来。怎样 的设计才能面对需求的改变却可以保持相对稳定,从而使得系 统可以在第一个

版本之后不断的去迭代

如何设计

设计的时候,时刻要考虑,尽量让现在这个类足够好,写好了不要去修改,如果有需求来,新增加一些类就完事

了,原来的代码能不动就不动。

史上最贴切的例子

		PC大家再熟悉不过了吧,把PC电脑理解成是大的软件系统,任何部件如CPU内存、硬盘、鼠标、键盘等都可以理
 
 解为程序中封装的类或程序集,由于PC容易插拔的方式,那么不管哪一个出现问题,都可以在不影响别的部件的前提下进
 
 行修改或替换。

易插拔:高内聚低耦合。

开放封闭原则:内存不够只要插槽够就可以添加,硬盘不够可以用移动硬盘。

依赖倒置原则:说白了就是面向接口的编程,不要对实现编程,无论主板、CPU、内存都是针对接口设计的,如果

​ 针对实现设计,内存就要对应到具体品牌的主板,换内存就要换主板。

在这里插入图片描述

即国际ISO定义一套接口标准,小米厂商按照接口实现自己的小米键盘,键盘的实现细节是复杂的,各个厂商都有

自己的实现方式(高内聚),但是键盘的接口是统一的,不管用那个厂商的键盘都可以(低耦合)。

依赖倒置原则中的倒置是什么东西?

​ 上面说到,小米键盘坏了可以换联想的,将键盘、鼠标等视为低层模块,主板视为高层模块,即底层模块不

依赖高层模块。同理高层模块也不能依赖低层模块(倒置),他们统一依赖抽象成接口类或者接口。即所谓的依赖

倒置。

电脑是一个低耦合高内聚的东西,而收音机所有东西都焊接在一起,这严重的高耦合,一个部件坏了,基本就废了。

后记

依赖倒转其实可以说是面向对象设计的标志,用那种语言来编写并不重要,如果编写的时候都是如何针对抽象编程

而不是针对细节编程,即程序中所有的依赖关系都是终止于抽象类或者接口,那就是面向对象的设计,反之就是过

程化的设计。

参考:《大话设计模式》

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值