随笔分类 - 设计模式作业
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解状态模式的动机,掌握该模式的结构; 2、能够利用状态模式解决实际问题。 [实验任务一]:银行账户 用Java代码模拟实现课堂上的“银行账户”的实例,要求编写客户端测试代码模拟用户存款和取款,注意账户对象状态和行为的变化。 实验要求:
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解观察者模式的动机,掌握该模式的结构; 2、能够利用观察者模式解决实际问题。 [实验任务一]:股票提醒 当股票的价格上涨或下降5%时,会通知持有该股票的股民,当股民听到价格上涨的消息时会买股票,当价格下降时会大哭一场。 实验要求: 1.
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解备忘录模式的动机,掌握该模式的结构; 2、能够利用备忘录模式解决实际问题。 [实验任务一]:多次撤销 改进课堂上的“用户信息操作撤销”实例,使得系统可以实现多次撤销(可以使用HashMap、ArrayList等集合数据结构实现)。 实
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解中介者模式的动机,掌握该模式的结构; 2、能够利用中介者模式解决实际问题。 [实验任务一]:虚拟聊天室 在“虚拟聊天室”实例中增加一个新的具体聊天室类和一个新的具体会员类,要求如下: 新的具体聊天室中发送的图片大小不得超过20M。 新
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解迭代器模式的动机,掌握该模式的结构; 2、能够利用迭代器模式解决实际问题。 [实验任务一]:JAVA和C++常见数据结构迭代器的使用 信1305班共44名同学,每名同学都有姓名,学号和年龄等属性,分别使用JAVA内置迭代器和C++中标
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解命令模式的动机,掌握该模式的结构; 2、能够利用命令模式解决实际问题。 [实验任务一]:多次撤销和重复的命令模式 某系统需要提供一个命令集合(注:可以使用链表,栈等集合对象实现),用于存储一系列命令对象,并通过该命令集合实现多次und
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解职责链模式的动机,掌握该模式的结构; 2、能够利用职责链模式解决实际问题。 [实验任务一]:财务审批 某物资管理系统中物资采购需要分级审批,主任可以审批1万元及以下的采购单,部门经理可以审批5万元及以下的采购单,副总经理可以审批10万
阅读全文
摘要:[实验任务一]:婚介所 婚介所其实就是找对象的一个代理,请仿照我们的课堂例子“论坛权限控制代理”完成这个实际问题,其中如果年纪小于18周岁,婚介所会提示“对不起,不能早恋!”,并终止业务。 实验要求: 1. 提交类图; 、 2. 提交源代码; 3. 注意编程规范。 package org.examp
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解享元模式的动机,掌握该模式的结构; 2、能够利用享元模式解决实际问题。 [实验任务一]:围棋 设计一个围棋软件,在系统中只存在一个白棋对象和一个黑棋对象,但是它们可以在棋盘的不同位置显示多次。 实验要求: 1. 提交类图; 2.提交源
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解外观模式的动机,掌握该模式的结构; 2、能够利用外观模式解决实际问题。 [实验任务一]:计算机开启 在计算机主机(Mainframe)中,只需要按下主机的开机按钮(on()),即可调用其他硬件设备和软件的启动方法 ,如内存(Memor
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解装饰模式的动机,掌握该模式的结构; 2、能够利用装饰模式解决实际问题。 [实验任务一]:手机功能的升级 用装饰模式模拟手机功能的升级过程:简单的手机(SimplePhone)在接收来电时,会发出声音提醒主人;而JarPhone除了声音
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解组合模式的动机,掌握该模式的结构; 2、能够利用组合模式解决实际问题。 [实验任务一]:组合模式 用透明组合模式实现教材中的“文件夹浏览”这个例子。 1.文件的执行不需真正实现,只需简单提示即可; 2.提交源代码; 3.注意编程规范。
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解桥接模式的动机,掌握该模式的结构; 2、能够利用桥接模式解决实际问题。 [实验任务一]:两个维度的桥接模式 用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。 #include <iostream
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解适配器模式的动机,掌握该模式的结构; 2、能够利用适配器模式解决实际问题。 [实验任务一]:双向适配器 实现一个双向适配器,使得猫可以学狗叫,狗可以学猫抓老鼠。 实验要求: 1. 画出对应的类图; 2.提交源代码; 3.注意编程规范。
阅读全文
摘要:本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解单例模式的动机,掌握该模式的结构; 2、能够利用单列模式解决实际问题。 [实验任务一]:学号的单一 仿照课堂的身份证的例子,实现每个同学仅有一个学号这一问题。 实验要求: 1. 画出对应的类图; 2.提交源代码; 3.注意编程规范。
阅读全文
摘要:2.提交源代码(用C++完成); 3.注意编程规范。 #include <iostream> class Vector { private: int* data; // 指向向量数据的指针 int size; // 向量的长度 public: // 构造函数 Vector(int size) { t
阅读全文
摘要:实验6:原型模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解原型模式的动机,掌握该模式的结构; 2、能够利用原型模式解决实际问题。 [实验任务一]:向量的原型 用C++完成数学中向量的封装,其中,用指针和动态申请支持向量长度的改变,使用浅克隆和深克隆复制向量类,比较这两种克隆
阅读全文
摘要:实验5:建造者模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解建造者模式的动机,掌握该模式的结构; 2、能够利用建造者模式解决实际问题。 [实验任务一]:计算机组装 使用建造者模式,完成下述任务:计算机组装工厂可以将CPU、内存、硬盘、主机等硬件设备组装在一起构成计算机,计算
阅读全文
摘要:实验4:抽象工厂模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解抽象工厂模式的动机,掌握该模式的结构; 2、能够利用抽象工厂模式解决实际问题。 [实验任务一]:人与肤色 使用抽象工厂模式,完成下述产品等级结构: 实验要求: 1. 画出对应的类图; 2.提交源代码; 3.注意编
阅读全文
摘要:实验3:工厂方法模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解工厂方法模式的动机,掌握该模式的结构; 2、能够利用工厂方法模式解决实际问题。 [实验任务一]:加密算法 目前常用的加密算法有DES(Data Encryption Standard)和IDEA(Internat
阅读全文