单一职责原则进阶——多个地方的不同见解和解读

首先是定义 单一职责原则:一个类应该只有一个发生变化的原因 英文名叫Single Responsibility Principle,以下简称为SRP 其实这个里面有两个比较容易难懂的点 什么是职责 一个原因是表示只能有一个接口吗 下面我们从三本著作中去解读这个单一职...

2018-10-31 22:20:08

阅读数 66

评论数 0

如何定义一个类——单一职责原则

单一职责原则:就一个类而言,应该仅有一个引起他变化的原因。 1 一个老师类的例子 或者说在外部看来,一个类只应该能看到它的类的相关功能。如老师类只应该负责教授知识,备课,但是不应该负责开车。 切合实际的说一个TaskService类不应该包含处理时间的类,他可以是private的,但是肯定不...

2018-10-30 20:25:47

阅读数 310

评论数 0

增删改查也有设计模式——依赖倒置原则另解

一个增删改查的例子解读面向接口编程和依赖倒置原则 依赖倒置原则介绍 依赖倒置原则包括两个部分 .高层次的模块不应该依赖于低层次的模块,他们都应该依赖于抽象。 抽象不应该依赖于具体实现,具体实现应该依赖于抽象。 例子 现在有如下场景和需求: 老板提出要设计开发一个任务模块,任务...

2018-10-25 21:57:10

阅读数 129

评论数 0

结构——桥接模式

桥接模式是将抽象和实现分离开,或者说用组合去替代继承。 比如画图形,话白色的圆,白色的矩形,红色的圆形,红色的矩形,白色三角形,红色三角形 如果使用继承,则定义Shape类 WhiteCircle,WhiteRect,RedCircle,RedRect,WhiteTri,RedTri四个类 ...

2018-10-01 21:22:31

阅读数 101

评论数 0

结构——适配器模式(包装器模式)

英文名 adapter适配器或wrapper包装器 应用 他将一个类转换成另一个客户端可以可以调用的类,使得原来不能一起使用的两个类变成可以一起使用的类。通常是通过继承或依赖。 用包装器的名字很容易理解,即将类A包装成B,使得其他本不能调用类A的通过包装后的类B成功调用A的接口。 适配器...

2018-09-24 11:41:54

阅读数 163

评论数 0

创建——单例模式

英文名Singleton 最简单的设计模式 应用 当一个类在整个系统生命周期中只需要一个实例的时候使用,并且提供一个给其他类可以访问的接口。 例子 spring中维护的bean,servlet容器中管理的servlet类等。 使用 可以定义一个工厂方法返回该单例类。 class ...

2018-09-24 09:14:50

阅读数 108

评论数 0

创建——原型模式

英文名PROTOTYPE 用处 用原型实例指定创建对象的种类,通过拷贝原型创建新的对象。 例子 最好的例子就是word文档,或者一些常见的原型工具。经常是图形在左侧,通过拖动拖动一个组件到画布上,然后对画布上的组件进行二次编辑,这里的组件就是原型,拖动出去的是拷贝。 通常图形都是通过...

2018-09-24 08:54:34

阅读数 99

评论数 0

创建——工厂方法模式

英文 factory method 工厂方法模式 工厂方法模式是封装对象实例化工程的方法,每一个类都对应一个工厂类。 如果因此觉得麻烦,可以和抽象工厂类一样,作为参数去获取。 问题也是同样,向下转化的安全问题。 如果是一个类对应一个工厂类的话,那么需要定义如下类。 首先基础接口Facto...

2018-09-23 21:02:15

阅读数 68

评论数 0

创建——构造器模式

英文名BUILDER 用于将一个复杂对象与它的表示分离。使得同样的创建过程可以创建不同的表示。 假设现在要将一个RTF文档转换为word或者PDF。RTF rich text format富文本。 一般情况下我会定义一个方法RTFUtil.rtf2word和RTFUtil.rtf2pdf直接...

2018-09-23 15:57:42

阅读数 100

评论数 0

创建——抽象工厂模式

抽象工厂英文 abstract factory 名词需要分成两个部分读,抽象 工厂。 首先这是一个工厂,其次工厂是抽象的。 常用于需要针对不同情况创建不同组(一组包含多个)对象的情况中。 如: 如gui应用中的首页中都有更换皮肤的功能,更换皮肤通常需要修改导航栏的样式,首页背景图等。假设...

2018-09-22 22:51:20

阅读数 111

评论数 0

0 设计模式概述

设计模式组成 模式名称:就是名称 问题:对问题的描述,有时候包含了满足使用模式的先决条件 解决方案:描述设计 效果:描述使用设计后的效果 模式之间可能作用相似甚至可以相互替代。 描述设计模式的几个方面 方面 解释 模式名和分类 模式名用于描述模式,分类是对不同的模式进...

2018-09-16 20:51:48

阅读数 87

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭