设计模式原则

设计模式(一)

设计模式概念

	设计模式是指在软件开发中,经过验证的,用于解决特定环境下,重复出现的,特定问题的解决方案;
	经过验证,特定环境,重复出现,这几个性质决定了,设计模式不是一种纯粹的技术,
	而是一种针对特定行业,特定环境和问题的一种经验复合体。
	也决定了设计模式的掌握不是一蹴而就的。

模式设计原则

1.依赖倒置原则
高层模块不应该依赖低层模块,两者都应该依赖抽象
抽象不应该依赖具体实现,具体实现应该依赖抽象
高层模块与低层模块在业务上有关联,低层模块与高层模块都可能发生变化,
但是他们的变化都应该依赖于抽象,抽象在这里可以被看作标准。

2.开放封闭原则
一个类应该对扩展开放,对修改关闭
这里的扩展开放,指的是指一个类对外提供的接口应该具有可扩展性,
可以在原有的基础上上扩展出更多的对外功能接口,对修改关闭是指,应保持接口功能的稳定性,不对其做轻易修改

3.面向接口编程
不将变量类型声明为某个特定的类,而是声明为某个接口
客户程序无需获知对象的具体类型,只需要知道对象所具有的接口
减少系统中各部分的依赖关系,从而实现“高内聚、松耦合”类型设计方案

    对于不固定的类型,将其声明为接口,可以根据变化继承处相应变化结果的不同的具体类,从而保证了可扩展性
    对客户隔离对象类型,而让其其只关注接口,客户调用接口而不是调用具体的类,可以在一定程度上隔离类的变化对客户的影响
    减少系统中各部分之间得依赖关系,防止系统中一部分功能被修改时,其他部分不可预料得BUG得出现,提高了系统得健壮性

	**4.封装变化点**
 		将稳定点和变化点分离,扩展修改变化点
 		如果一个类得业务中,有变化点和稳定定,应当将变化点和稳定点隔离开,稳定点提供接口对变化点进行适应
 		,变化点具备可扩展性,方便进行扩展,这样得程序在不断得扩展中,也能保持很强得有序性,也增强了程序得健壮性
 		**5.单一职责原则**
 		一个类应该仅有一个一起它变化得原因
 		如果一个类有多个职责,则不同职责之间就具有了一定得耦合性,由于职责得变化性,
 		其中一个字职责得变化很可能对其他职责带来难以预见得影响,一方面它破坏了健壮性,又破坏了它的可复用性。
 		**6.里氏替换原则**
 		子类必须能够替换它的父类型
 		主要原因是当子类覆盖父类的实现,却没有完成父类的职责,这个时候如果用子类覆盖父类的使用,会出现错误。
 		这里子类覆盖父类的实现,是指子类以相同 的方法覆盖父类同样的方法,
 		改变了子类对应父类部分方法的职责导致子类无法完全 替代父类完成父类原本拥有的职责。
 		**7.接口隔离原则**
 		不应该强迫用户依赖他们不需要的方法
 		如果一个类的很多接口都以public的方式暴露给客户,则当客户使用是,不明白自己要使用的职责。
 		一个类应该把客户不需要的职责隐藏起来。
 		一般用于处理一个类拥有比较多的接口,而这些接口设计很多职责
 		**8 对象组合优于类继承**
 		优于继承的耦合程度很高,使得子类的可变化学被大大的限制,使用组合时可以大大的减少耦合度,
 		在具体业务场景下需关注该原则
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值