设计模式七大原则

本文详细介绍了软件设计的七大原则,包括单一职责、接口隔离、依赖倒转、里氏替换、开闭原则、迪米特法则和合成复用原则,并阐述了这些原则如何提高代码的可读性、可扩展性和稳定性。同时,讨论了设计模式的目的,如代码重用、高内聚低耦合等。此外,还讲解了UML类图及其关系,并简要概述了设计模式的分类。通过对这些概念的理解,开发者可以更好地进行软件设计和架构优化。
摘要由CSDN通过智能技术生成

常用七大原则有:
1)、单一职责原则
2)、接口隔离原则
3)、依赖倒转原则
4)、里氏替换原则
5)、开闭原则ocp
6)、迪米特法则
7)、合成复用原则

设计模式的目的:
1)、代码重用性
2)、可读性
3)、可扩展性
4)、可靠性
5)、高内聚、低耦合

单一职责原则:
降低类的复杂度,一个类通常只负责一项职责。
提高类的可读性、可维护性
降低变更带来的风险
只有类中的方法足够简单、足够少时,可以使用方法级别的单一职责,即使用不同的方法负责不同的职责
使用多个类化解分支,少写if-else,降低耦合度

接口隔离原则:
最小接口原则:一个类对另一个类的依赖建立在最小接口上
如果一个类依赖没使用到的方法不应该写在一个接口中,应该将接口拆分成若干个接口,让不同的类依赖一个或多个接口

依赖倒转原则:
高层模块不应该依赖低层模块,两者都应该依赖抽象,在java中抽象就是抽象类和接口
抽象不应该依赖细节,细节应该依赖抽象
依赖倒转原则实际上就是面向接口编程
当我们需要依赖某个对象的方法时,最好的依赖抽象类或接口,然后实现类实现依赖的方法,直接使用接口调用即可;这样的好处就是让依赖更稳定,后期扩展或缩减方法比较方便;

里氏替换原则:
子类尽量不要重写父类的方法;
子类需要重写父类方法,那么就重新继承一个基类,专门用于子类重写方法的,这样就不会覆盖掉另一个类的方法了;

开闭原则:ocp
对扩展开放(提供方),对修改关闭(使用方)
当我们需要对某个功能进行扩展时,应该直接让提供方进行扩展,不应该让使用方做任何修改
在提供方进行扩展时,应该使用增加方法或类,不应该在原来的方法或类上修改,因为可能有其他的类依赖这个类,修改的话就会出现问题
使用一个抽象类或者接口做基类,让其他实现功能的实现类继承这个抽象类,当我们需要添加功能时,重新创建一个类继承这个类重写里面方法即可;

迪米特法则:
一个对象应该对其他对象保持最少的了解;
降低类与类之间的耦合度
一个类出现在另一个类的方法参数或成员变量或方法返回值或依赖关系,就是直接朋友,如果出现在局部变量的就是陌生朋友类
当对象与对象不是直接朋友时,不应该把方法中的细节暴露在陌生的类中,应该直接封装到类的内部,对外提供一个public方法直接调用即可;

合成复用原则:
一个类需要使用到另一个类中的方法或属性,使用聚合而不是继承

设计原则核心思想:
1.找出应用中可能需要变化的地方,把它们独立出来,不要和那些不需要变化的代码混合在一起
2.面向接口编程,而不是面向实现类编程
3.为了交互对象之间的松耦合而努力

UML类图:
统一建模语言
类图是描述类与类之间的关系的,是UML图中最核心的
类与类之间的关系:依赖、泛化、实现、关联、聚合、组合
在类中new对象就是组合关系,不可分离
在类中声明类属性,但没有new,代表聚合关系,可以分离也可以组装在一起

设计模式分类:
1.创建型模式
2.结构型模式
3.行为型模式

设计模式不是代码,是某类问题的通用解决方案;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值