![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
编程之路-java
软件工程师
展开
-
构建者模式-在开源项目解析
构建者 定义: 构造者模式是在构造比较复杂对象,并且该对象可以拆分多个,每个拆分也是个对象或组成部分 举例子:一个产品有不同的组成部分,而在程序里面需要把一个产品抽检出来需要较多的零件进行处理和组装,使得构造一个产品变得非常复杂,构造模式就是使得客户在不需要知道这么多复杂的细节,不必关心产品内部细节。 产品类:一般是一个较为复杂的对象,也就是说创建对象的过程比较复杂,一般会有比较多的代码量。在本类图中,产品类是一个具体的类,而非抽象类。实际编程中,产品类可以是由一个抽象类与它的不同实现组成,也可以是由多个原创 2020-08-08 15:51:16 · 192 阅读 · 0 评论 -
设计原则一些理解
设计原则一些理解 设计原则贯穿在我们代码模块结构设计之中,核心思想为我们项目提供可扩展性做铺垫。 怎么学习设计原则,结合我们代码设计实践来理解设计原则。结合到生活,应用场景来提炼。 单一职责原则(Single Responsibility Principle, SRP) 一个类只负责一个功能领域中的相应职责,或者可以定义为:就一个类而言,应该只有一个引起它变化的原因 结合到我们生活与工作,货车的职责是拉货,公共汽车的职责是拉人,在日常生活中两个则是分开的,如果公共汽车又拉货,拉人,体验的确不太好。原创 2020-08-03 17:51:56 · 506 阅读 · 0 评论 -
State模式-在自动售货机的应用
State定义 当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变其类。 状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂的情况,把状态的判断逻辑转移到表示不同状态 的一系列类当中,把复杂的判断逻辑简单化。 将与特定状态的相关行为局部化,并且将不同状态的行为分割开来。什么情况考虑状态模式了, 当一个对象的行为取决于它的状态 ,并且它必须在运行的时刻根据状态改变它的行为时,就可以考虑使用状态模式。 例子现在有个自动售货机的代码需要我们来写 在购买东西过程中包含4个状态,已投币原创 2020-07-29 11:18:41 · 147 阅读 · 0 评论 -
装饰器模式-游戏装备例子
装饰器模式定义 动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生产的子类更为灵活 原有类接口component,及具体实现类concreteComponent,他们需要添加一些职责。 Decorator装饰类继承component, concreteDecorator是为component来增加功能的。 例子1 这个例子我们已人为component,想为人添加额外各种衣服的后的包装类 穿各种衣服类则是具体的包装类。 对于client则使用穿完衣服的人组件。 代码2例子讲解 游戏场景原创 2020-07-28 16:35:31 · 249 阅读 · 0 评论 -
adapter模式-手机电源适配例子
adapter模式定义 adapter 将一个类的接口转换成客户希望的另外一个接口。 使用场景,两个类所做的事情相同或者相似,但是具有不同的接口时要使用它。 target 这是客户所期望的接口,目标可以是具体抽象的类,也可以是接口。 adapter 通过在内部包装adaptee,转换成target接口。 adaptee 需要适配的类。 adapter例子 我们的手机需要5V的电源,家庭电压是V220,我们需要一个充电器来适配。 5V接口就是我们手机期望的target adaptee就是我们220v对原创 2020-07-28 15:37:39 · 204 阅读 · 0 评论