设计模式

设计模式解决问题:

设计模式 是对软件设计中 普遍存在(反复出现) 的各种问题,所提出的 解决方案

常用七大原则:

1、单一职责原则

对于类来说,即一个类只负责一个职责。比如userDao这个类他只负责user表的增删改查等操作。

注意事项:

1、降低类的复杂度,一个类只负责一个职责

2、提高类的可读性,可维护性

3、降低变更引起的风险

2、接口隔离原则

1、客户端不应该依赖他不需要的接口

2、一个类对另外一个类的依赖性应该是建立在最小的接口上

3、不应当将不同的接口合并在一起,形成一个臃肿的大接口,这是对接口的污染

4、使用多个专门的接口要比使用单一的总接口要好

3、依赖倒转原则

基本介绍

1、高层模块不应该依赖低层模块,二者应该依赖其抽象

2、抽象不应该依赖细节,细节应该依赖抽象

3、依赖倒转的中心思想是面向接口编程

4、使用接口或抽象类的目的是制定好规范,而不涉及具体的操作,把具体的实现交给他的实现类去完成

5、相对于实现的多变性来说,接口或者抽象类要稳定很多,以抽象类或者接口为基础搭建框架会比实现类更稳定。

注意事项

1、低层模块尽量都要有抽象类或接口,或者两者都有,程序稳定性更好

2、变量的声明类型尽量是接口或者抽象类,这样我们变量的引用或者对象间降低耦合,有利于程序扩展和优化

3、继承时遵循里氏替换原则

4、里氏替换原则

基本介绍

1、在使用继承时,遵循里氏替换原则,在子类中尽量不要重写父类方法

2、继承实际上是让两个类耦合性更强, 在适当的情况下可以通过聚合,组合,依赖来解决问题

5、开闭原则

基本介绍

1、开闭原则是编程中最基础、最重要的设计原则

2、一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。用抽象构建框架,用实现扩展细节

3、当软件需要变化,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化

4、使用设计模式的目的就是遵循开闭原则

6、迪米特法则

基本介绍

1、一个对象应该对其他对象保持最少的了解

2、类与类关系密切,耦合度越大

3、迪米特法则又叫最少知道原则,即一个类对自己的依赖的类知道的越少越好。

迪米特法则的优点

1、降低了类之间的耦合度,提高了模块的相对独立性。

2、由于亲合度降低,从而提高了类的可复用率和系统的扩展性。

7、合成复用原则

基本介绍

原则上尽量使用合成/聚合的方式,而不是使用继承

设计模式目的

编写软件过程中,程序员面临着来自耦合性、内聚性以及可维护性,可扩展性,重用性,灵活性等方面的挑战,设计模式为了让程序具体有更好的

1、代码重用性

2、可读性

3、可扩展性

4、可靠性

5、使程序呈现高内聚,低耦合的特性

设计模式类型

创建型模式:单例模式、抽象工厂模式、原型模式、建造者模式、工厂模式

结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式

行为型模式:模板方法模式、命令模式、访问者模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、责任链模式

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

半夜燃烧的香烟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值