设计模式
咕咕怪
这个作者很懒,什么都没留下…
展开
-
设计模式作业1
1.一个开宝箱游戏的基本描述为:游戏中有多种类型的人物(Role),如战士(Solider)、魔法师(Mage)等,主角的类型只能选择其中一种,且游戏中不再更改。游戏中还有各种宝箱(Box),如装有不同数目金钱的宝箱、装有毒物的宝箱等。当任一种类型的主角打开装有金钱的宝箱时,宝箱中的金钱会增加给主角,同时宝箱的金钱数目变成0;当战士打开装有毒物的宝箱时,战士的生命值(HP)会减少10%,但金钱(M...原创 2018-09-17 23:11:12 · 2298 阅读 · 0 评论 -
建造者模式
建造者模式:将一个复杂对象的构建与它的表示分离,使得同样的创建过程可以创建不同的表示。原创 2018-11-05 16:34:09 · 126 阅读 · 0 评论 -
模板模式
模板方法模式:定义一个操作中算法的骨架,将一些步骤延迟到子类中实现。模板方法模式是基于”继承“的;通过一个父类调用其子类的操作,通过对子类的具体实现扩展不同的行为,实现了反向控制 & 符合“开闭原则”。举例:package template;public abstract class Game { abstract void initialize(); ab...原创 2018-11-05 11:33:43 · 132 阅读 · 0 评论 -
原型模式
原型模式:clone.用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。从一个对象再创建另外一个可定制的对象,而不需要知道任何创建的细节。 ...原创 2018-11-01 15:04:00 · 90 阅读 · 0 评论 -
代理模式
概念:代理模式为其他对象提供一种代理以控制对这个对象的访问。想在访问一个类时做一些控制。增加中间层。 1、和适配器模式的区别:适配器模式主要改变所考虑对象的接口,而代理模式不能改变所代理类的接口。2、和装饰器模式的区别:装饰器模式为了增强功能,而代理模式是为了加以控制。 ...原创 2018-11-01 14:53:11 · 101 阅读 · 0 评论 -
装饰模式
概念:动态地给一些对象添加一些额外的职责,就增加功能来说,装饰模式比增加子类更加灵活(因为子类继承父类扩展功能的前提,是已知要扩展的功能是什么样的,而这是在编译时就要确定的,但是装饰者模式可以实现动态(在运行时)去扩展功能)。装饰类和被装饰类可以独立发展,不会相互耦合,装饰模式是继承的一个替代模式,装饰模式可以动态扩展一个实现类的功能。每个装饰对象的shi'实现和如何使用这个对象分离开...原创 2018-11-01 10:48:17 · 166 阅读 · 0 评论 -
设计模式思考
能扩展就不修改,因为每一次修改原代码都可能带来原来没有的错误。最简单的思路是增加抽象层,不过注意过犹不及。设计代码的时候心里有界面有按钮有接口,替客户想怎样操作最方便,未来哪里有可能拓展。如果需要把一些简单重复的任务分配给码农去做,他们对于其他部分和整体设计不太了解,应该如何实现多层次的抽象。 接口隔离原则:类实现接口时不能有冗余的方法单一职责原则:不互相影响的方法不要混在...原创 2018-11-01 09:47:40 · 158 阅读 · 0 评论 -
设计模式六大原则
其实世界上本没有设计模式,用的人多了,也便成了设计模式。 开闭原则:1、概念:实体如类、模块和函数应该对扩展开放,对修改关闭。模块应尽量在不修改原(是“原”,指原来的代码)代码的情况下进行扩展。2、背景:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。3、解决...原创 2018-10-31 21:58:11 · 116 阅读 · 0 评论 -
简单工厂模式
简单计算器package jisuanqi;import java.util.Scanner;public class jisuanqi { public static void main (String [] args) { Scanner s=new Scanner(System.in); int num1=s.nextInt(); String option=s...原创 2018-10-31 16:07:57 · 109 阅读 · 0 评论 -
设计模式作业2
1.小王正在编写一个简单的计算器程序,要求输入两个整数和运算符号(加、减、乘、除),输出计算结果。小王用面向过程方法编写了下面的代码。请采用面向对象方法通过恰当的设计模式对小王的代码进行重构。int main(){ int numa,numb; char oper; double result; cin>>numa>>numb; cin>>oper...原创 2018-09-17 23:12:19 · 1516 阅读 · 0 评论 -
创建类模式的意义
创建类模式的意义 首先,在编程中,对象的创建通常是一件比较复杂的事,因为,为了达到降低耦合的目的,我们通常采用面向抽象编程的方式,对象间的关系不会硬编码到类中,而是等到调用的时候再进行组装,这样虽然降低了对象间的耦合,提高了对象复用的可能,但在一定程度上将组装类的任务都交给了最终调用的客户端程序,大大增加了客户端程序的复杂度。采用创建类模式的优点之一就是将组装对象的过程封装到一个单独的类中...原创 2018-11-19 19:05:33 · 403 阅读 · 0 评论