23种设计模式-单一原则

本文探讨了设计模式的主要目的,包括代码重用、可读性、可扩展性、可靠性和高内聚低耦合特性。同时,详细阐述了设计模式的七大原则:单一职责、接口隔离、依赖倒转、里氏替换、开闭原则、迪米特法则和合成复用原则。以代码实例展示了如何应用单一职责原则,通过类的拆分和方法的组织,实现更符合这一原则的设计。
摘要由CSDN通过智能技术生成

一、设计模式的目的

1) 代码重用性 (即:相同功能的代码,不用多次编写)

2) 可读性 (即:编程规范性, 便于其他程序员的阅读和理解)

3) 可扩展性 (即:当需要增加新的功能时,非常的方便,称为可维护)

4) 可靠性 (即:当我们增加新的功能后,对原来的功能没有影响)

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

二、设计模式的七大原则

1) 单一职责原则

2) 接口隔离原则

3) 依赖倒转(倒置)原则

4) 里氏替换原则

5) 开闭原则

6) 迪米特法则

7) 合成复用原则

三、单一原则

概念:

对类来说的,即一个类应该只负责一项职责。如类A负责两个不同职责:职责1,职责2。 当职责1需求变更而改变A时,可能造成职责2执行错误,所以需要将类A的粒度分解为 A1,A2。

例如:UserDao只负责操作用户表的CRUD,如果还操作订单表的CRUD的话,那么就违背了单一原则。如果需要操作两个表的话,那么就需要拆成两个比如userDao和orderDao。

实例:

首先我们用吃饭这个例子来说明,某某某在餐桌上吃饭,我们知道只有人是在餐桌上吃饭,而金鱼是不能在餐桌上吃饭的。我们说单一原则是只负责一项职责,那么有多个职责的话,就需要拆分开,在加一个动物在吃饭。

修改1:

这样就拆分成两个类了,各有各的职责。 也遵循了单一原则。

但是这样如果新加一个类型的话,那么我们需要新建一个类,新new一个对象,并且调用方法才可以使用,代码改动量比较大,那么继续优化

修改2:

其实就是抽取成一个类中,去执行多个方法,类似工具类一样

这样方式其实在类上没有遵守单一原则,因为里面有多个职责,但是类中的方法是单一原则的,只执行一种职责。 

小结:

1、对类来说的,即一个类应该只负责一项职责

2、类没有遵守单一原则,但是类中方法遵守了也是可以的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值