设计模式实验报告材料

设计模式实验报告材料
设计模式实验报告材料

实验一单例模式的应用

1 实验目的

1) 掌握单例模式(Singleton)的特点

2) 分析具体问题,使用单例模式进行设计。

2 实验容和要求

很多应用项目都有配置文件,这些配置文件里面定义一些应用需要的参数数据。

通常客户端使用这个类是通过new一个AppConfig的实例来得到一个操作配置文件容的对象。如果在系统运行中,有很多地方都需要使用配置文件的容,系统中会同时存在多份配置文件的容,这会严重浪费存资源。

事实上,对于AppConfig类,在运行期间,只需要一个对象实例就够了。那么应该怎么实现呢?用C#控制台应用程序实现该单例模式。绘制该模式的UML图。

3 实验代码

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace AppConfig

{

public class Singleton

{

private static Singleton instance;

private Singleton()

{

}

public static Singleton GetInstance()

{

if (instance == null)

{

instance = new Singleton();

}

return instance;

}

}

class Program

{

static void Main(string[] args)

{

Singleton singletonOne = Singleton.GetInstance();

Singleton singletonTwo = Singleton.GetInstance();

if (singletonOne.Equals(singletonTwo))

{

Console.WriteLine("singletonOne 和singletonTwo 代表的是同一个实例");

}

else

{

Console.WriteLine("singletonOne 和singletonTwo 代表的是不同实例");

}

Console.ReadKey();

}

}

}

4 实验结果

实验二工厂模式的应用

1 实验目的

1) 掌握工厂模式(Factory)的特点

2) 分析具体问题,使用工厂模式进行设计。

2 实验容和要求

有一个OEM制造商代理做HP笔记本电脑(Laptop),后来该制造商得到了更多的品牌笔记本电脑的订单Acer,Lenovo,Dell,该OEM商发现,如果一次同时做很多个牌子的本本,有些不利于管理。利用工厂模式改善设计,用C#控制台应用程序实现该OEM制造商的工厂模式。绘制该模式的UML图。

3 实验代码

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace Factory

{

class Computer

{

public virtual void print()

{

Console.Write("我是Computer\n");

}

}

class HPComputer:Computer

{

public override void print()

{

Console.Write("我是HPComputer\n");

}

}

class AcerComputer : Computer

{

public override void print()

{

Console.Write("我是AcerComputer\n");

}

}

class DellComputer : Computer

{

public override void print()

{

Console.Write("我是DellComputer\n");

}

}

interface Ifactory

{

Computer CreateComputer();

}

class HPFactory : Ifactory

{

public Computer CreateComputer()

{

return new HPComputer();

}

}

class AcerFactory : Ifactory

{

public Computer CreateComputer()

{

return new AcerComputer();

}

}

class DellFactory : Ifactory

{

public Computer CreateComputer()

{

return new DellComputer();

}

}

class Program

{

static void Main(string[] args)

{

Ifactory factory = new HPFactory();

Computer computer = factory.CreateComputer();

computer.print();

factory = new DellFactory();

computer = factory.CreateComputer();

computer.print();

factory = new AcerFactory();

computer = factory.CreateComputer();

computer.print();

}

}

}

4 实验截图

实验三抽象工厂模式的应用1 实验目的

1) 掌握抽象工厂模式(Abstract Factory)的特点

2) 分析具体问题,使用抽象工厂模式进行设计。

2 实验容和要求

麦当劳(McDonalds)和肯德基(KFC)快餐店都经营汉堡(Hamburg)和可乐(Cola),用C#控制台应用程序实现这两个快餐店经营产品的抽象工厂模式。绘制该模式的UML图。

3 实验代码

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace AbstractFactory

{

class Cola

{

public virtual void print(){

Console.Write("i am cola\n");

}

class Hum

{

public virtual void print()

{

Console.Write("i am hamburger\n");

}

}

class KFCCola : Cola

{

public override void print()

{

Console.Write("i am KFCcola\n");

}

class MDCola : Cola

{

public override void print()

{

Console.Write("i am MDcola\n");

}

}

class KFChum:Hum

{

public override void print()

{

Console.Write("i am KFChamburger\n");

}

class MDhum : Hum

{

public override void print()

{

Console.Write("i am MDhamburger\n");

}

}

abstract class factory

{

public abstract Hum createHum();

public abstract Cola createCola();

}

class KFCFectory : factory

public override Hum createHum()

{

return new KFChum();

}

public override Cola createCola()

{

return new KFCCola();

}

}

class MDFectory : factory

{

public override Hum createHum()

{

return new MDhum();

}

public override Cola createCola()

{

return new MDCola();

}

}

class Program

{

static void Main(string[] args)

{

factory f = new KFCFectory();

Hum h = f.createHum();

Cola c = f.createCola();

h.print();

c.print();

f = new MDFectory();

h = f.createHum();

c = f.createCola();

h.print();

c.print();

}

}

}

4 实验结果

实验四建造者模式的应用1 实验目的

1) 掌握建造者模式(Builder)的特点

2) 分析具体问题,使用建造者模式进行设计。

2 实验容和要求

建造者模式是一种创建型模式,它主要是应对项目中一些复杂对象的创建工作。所谓“复杂对象”,是指此对象中还含有其它的子对象。我们现在定义一个场景:汽车生产必须包含车轮(Wheel)、油箱(OilBox)和车身(Body),应用建造者模式,用C#控制台应用程序实现该设计,构建BMW品牌和BenZ品牌汽车生产。绘制该模式的UML图。

3 实验代码

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace Builder

{

class Car

{

private String wheel;

private String oilBox;

private String body;

public void setWheel(String wheel) {

this.wheel = wheel;

}

public void setOilBox(String oilBox) {

this.oilBox = oilBox;

}

public void setBody(String body) {

this.body = body;

}

天文观测 开放性实验报告

课后思考 一.天文观测所需要的观测条件 要进行天文观测,没有一个好的场地是绝对不行的。观测场地周围的环境直接影响着观测效果:如果障碍物过多,很难见到观测目标,就更甭提观测了;如果气流变化过大,会造成图象的抖动和变形,使望远镜的分辨率降低;如果天空被灯光照得很亮,极限星等(肉眼可见最暗恒星的星等)就会降低,换句话说,也就是看到的恒星数就会减少,对观测和摄影都会造成很大的影响,甚至根本无法进行……为了使观测活动达到预期效果,选择一个合适的场地是必须的,选择时要注意以下几点:选择一个开阔的场地,如运动场,使能看到的天区增到最大。如果住在高楼林立的居民区内,在楼下随便找个地方是绝对不能观测的。可想而知,在几栋楼之间要想看到天顶以外的部分是件非常困难的事情。在运动场之类的地方就可以避免这些麻烦事了;要注意气流的影响,若在建筑物附近观测,应特别注意要避开开着的窗户,因为在开着的窗口附近,很容易产生复杂的气流,以至于影响观测效果。此外,还应该注意尽量避免直接在水泥地面上观测,因为水泥的比热容(降低同样温度放出热量的多少)很小,所以在夜间温度会很快下降,也会造成气流变化。土地就比水泥地面好得多,如果有条件的话,最好选择在草地上观测,因为草地含有大量水分,水的比热容又大,所以不易引起气流的剧烈变化。当前,许多天文台都建设在海边或海岛上,主要也是因为这个原因;灯光也是一个不可忽视的问题,随着经济的发展,城市的灯光越来越多,天空被照得越来越亮,而且许多灯都是彻夜不关的,正如上面所说,这对天文观测造成了极为严重的影响。虽然你不能为了进行观测而不让城市发展,但是我们可以主动的去避开灯光。在美国,天文爱好者们为了躲避灯光的影响,自己驾车几十,甚至几百公里来到野外进行观测的事情已是屡见不鲜了——我们也只能学他们,找一块自己认为足够黑暗的地方——当然,应该是自己熟悉的地方,千万不要到自己毫不知情的荒郊野外,以免发生危险。 二.关于月球的观测 1.为什么月球最适于天文观测? 最主要的是没有大气层扰动,也没有城镇灯光干扰,可以一览无余,饱览星空。月球的背面不受地球上人工无线电干扰。 此外还有以下几点: ①、月球引力较地球小得多,在月球上建造任何巨大的建筑物都要比地球上容易得多,大型光学望远镜由于重力作用导致的弯曲形变也要轻得多。 ②、月球上没有大气干扰,其表面环境实际上处于超真空状态,分辨率比地球上高得多,而且能观测到更多的波段 ③、月球为天文望远镜提供了一个巨大、稳定而又极为坚固的观测平台,因而可以采用结构简单、造价低廉的安装、指向和跟踪系统。这一点是处于失重状态的天文卫星所望尘莫及的。 ④、由于月球远离地球,它所受到的人类活动的影响和地球本身的各种活动的影响要比人造卫星小得多。 ⑤、由于月球的自转周期和它绕地球的公转周期恰好相等,因而它总是以同一面对着地球。如果我们把观测仪器(特别是射电望远镜)放在背向地球的那一边,则地球对天文观测的不利影响就更小了。月球的天空即使在白天也是全黑的,而且它的自转周期长达近一个月,这就使得我们能够观测到望远镜视线所及的全部天空,并对很暗的天体进行充分长时间的积累观测。

小学自然实验报告样板.doc

小学自然实验报告模板 教学模式是在一定的教学思想或教学理论的指导下建立起来的,较为稳定的教学活动结构框架和活动程序。“结构框架”意在从宏观把握教学活动整体各要素之间的内部关系;“活动程序”意在突出教学模式的有序性和可行性。 自然学科是人类在认识自然的过程中所积累的知识。它与人的认识过程有较高的一致性,最适用于发现式的学习方法。实验是传授自然科学知识和培养与发展学生各种能力的重要手段。我校的教研组推出的四环节实验课教学模式,以其较完美的操作性、开放性、优效性和灵活性形成了自然实验课的基本框架,较好地揭示课堂教学的一般程序、课堂教学诸因素的内在联系和课堂教学的普遍规律。现就模式谈一下我在教学中的实践与几点体会。 一、教学模式的四个环节在实践中的具体运用 (一)提出问题阶段 提出问题阶段是当研究一个问题时,为了激发学生的求知欲望,引导学生探索并调动他们积极性的阶段。教师可结合要研究的问题,用生动形象的语言恰如其分地提问,让学生在观察和思维中发现问题。 例如,《物体的热胀冷缩》一课,先进行演示实验,在铁架台上放一平底烧瓶,瓶中装满水,用酒精灯加热,水还没烧开,瓶中的水就往外溢。教师接着问大家,你们看了这个现象有什么想法?学生一下子提出许多问题:“为什么水加热后往上溢呢?”

“水难道会变多吗?” 教学时,为了激发学生探求知识的欲望,应千方百计创造性地运用各种方法,如:做游戏、讲故事、变魔术、猜谜语、出示挂图、运用幻灯等。引起学生要研究问题的兴趣,提出自己的想法。 (二)作出假设阶段 学生提出了问题,但在还没有学习有关的知识时,教师引导学生对自己的问题作出假设的回答。教师再从学生假设中引导学生逐渐进入要研究的问题中去。 例如,《水蒸气的凝结》,教师将还在冒白气的温水杯加盖,过一会儿再揭开盖,请同学们看盖上的水珠,水蒸气碰到什么样的物体在上面结成水珠呢?引导学生作出假设,发表不同意见。有的同学说:“水蒸气遇到热的物体结成水珠。”有的说:“水蒸气遇到冷的物体结成水珠。”教师接着说:“那么我们就一起研究一下,水蒸气在什么条件下能变成水呢?”这样就逐渐地把学生引入要研究的课题。 在这个阶段中,学生根据已有知识的经验,通过演绎、归纳、推理而提出的假设,不少带有猜测的性质。此时教师要引导学生积极作出假设,不应压抑学生的思维,不管是对是错,都不要忙于作出评价。 (三)设计实验阶段

【精品实验报告】软件体系结构设计模式实验报告

【精品实验报告】软件体系结构设计模式实验报告软件体系结构 设计模式实验报告 学生姓名: 所在学院: 学生学号: 学生班级: 指导老师: 完成日期: 一、实验目的 熟练使用PowerDesigner和任意一种面向对象编程语言实现几种常见的设计模式,包括组合模式、外观模式、代理模式、观察者模式和策略模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式,并学会分析这些模式的使用效果。 二、实验内容 使用PowerDesigner和任意一种面向对象编程语言实现组合模式、外观模式、代理模式、观察者模式和策略模式,包括根据实例绘制模式结构图、编写模式实例实现代码,运行并测试模式实例代码。 (1) 组合模式 使用组合模式设计一个杀毒软件(AntiVirus)的框架,该软件既可以对某个文件夹(Folder)杀毒,也可以对某个指定的文件(File)进行杀毒,文件种类包括文本文件TextFile、图片文件ImageFile、视频文件VideoFile。绘制类图并编程模拟实现。 (2) 组合模式 某教育机构组织结构如下图所示: 北京总部 教务办公室湖南分校行政办公室 教务办公室长沙教学点湘潭教学点行政办公室

教务办公室行政办公室教务办公室行政办公室 在该教育机构的OA系统中可以给各级办公室下发公文,现采用 组合模式设计该机构的组织结构,绘制相应的类图并编程模拟实现,在客户端代码中模拟下发公文。(注:可以定义一个办公室类为抽象叶子构件类,再将教务办公室和行政办公室作为其子类;可以定义一个教学机构类为抽象容器构件类,将总部、分校和教学点作为其子类。) (3) 外观模式 某系统需要提供一个文件加密模块,加密流程包括三个操作,分别是读取源文件、加密、保存加密之后的文件。读取文件和保存文件使用流来实现,这三个操作相对独立,其业务代码封装在三个不同的类中。现在需要提供一个统一的加密外观类,用户可以直接使用该加密外观类完成文件的读取、加密和保存三个操作,而不需要与每一个类进行交互,使用外观模式设计该加密模块,要求编程模拟实现。参考类图如下: reader = new FileReader();EncryptFacadecipher = new CipherMachine();writer = new FileWriter();-reader: FileReader-cipher: CipherMachine-writer: FileWriter +EncryptFacade () +fileEncrypt (String fileNameSrc,: voidString plainStr=reader.read(fileNameSrc); String fileNameDes)String

开放性实验报告

地理与生物信息学院 2012 / 2013 学年第一学期 实验报告 课程名称:开放性实验 实验名称:数字脑电图仪的使用和EEG的采集 班级学号 B11090323 学生姓名高栋南 指导教师徐欣 日期:20 13 年7月

一、实验题目: 数字脑电图仪的使用和EEG的采集 二、实验内容: 学习人体脑电图的记录方法,了解正常的脑电图的波形熟练运用EEG数据采集仪。 实验对象:健康成年人 实验器材:脑电图仪,引导电机,导电质,胶水,医用绷带,医用棉球棒 三、实验要求: (1)实验需要的准备工作: 实验人员前一天晚上要将头发清洁干净,且短发者最佳,这样便于安放电极。 保证充足睡眠,不可以熬夜,实验前,要保持正常饮食,不过量饮酒,不暴饮暴食。 检查前3天停用各种药物,不能停药者要说明药物名称,剂量,服用方法 (2)电机的放置发放: 让受试者坐在凳子上,摆放好实验器材,依次找出受试者各电极部位,先用医用棉球棒蘸少许导电质涂抹于电极位,再用引导电极蘸少许胶水放在电极位,最后确定无误后贴上医用胶带以固定。

四、实验过程: 让受试者坐在凳子上,摆放好实验器材,依次找出受试者各电极部位,先用医用棉球棒蘸少许导电质涂抹于电极位,再用引导电极蘸少许胶水放在电极位,最后确定无误后贴上医用胶带以固定。 接通电源,调节脑电图仪的工作参数:整机灵敏度100V/cm,扫描速度10~50ms/cm,时间常数0.1s,如果自发电位较小,可增加灵敏度到50V/cm。 观察一段时间脑电变化,并按脑电图各波分类标准进行分析。接着让受试者做出闭目,深呼吸等行为,观察此时脑电波的变化。最后让受试者尝试进入睡眠,观察并记录脑电图仪20分钟以上,结束实验。 注意事项: (1)检查时,精神要放松,不可过分紧张,头皮上安放电极,不是通电。 (2)电极需要经过盐水浸泡透,电极与头皮接触的位置必须用酒精棉球进行脱脂,同时耳垂部位也要经过脱脂。 (3)耳电极夹凹下去的地方要放一些浓盐水浸泡透的棉球,以减小阻抗,增强导电性,减少干扰。 (4)全身肌肉要放松,以免肌电受到干扰,受试者应当均匀呼吸,放松肌肉,停止眨眼,咀嚼或者吞咽等动作,按照要求睁开眼睛,闭上,或过度呼吸。 五.实验小结

设计模式实验报告

实验一单例模式的应用 1 实验目的 1) 掌握单例模式(Singleton)的特点 2) 分析具体问题,使用单例模式进行设计。 2 实验内容和要求 很多应用项目都有配置文件,这些配置文件里面定义一些应用需要的参数数据。 通常客户端使用这个类是通过new一个AppConfig的实例来得到一个操作配置文件内容的对象。如果在系统运行中,有很多地方都需要使用配置文件的内容,系统中会同时存在多份配置文件的内容,这会严重浪费内存资源。 事实上,对于AppConfig类,在运行期间,只需要一个对象实例就够了。那么应该怎么实现呢?用C#控制台应用程序实现该单例模式。绘制该模式的UML 图。 3 实验代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace AppConfig { publicclass Singleton { privatestatic Singleton instance; private Singleton() {

} publicstatic Singleton GetInstance() { if (instance == null) { instance = new Singleton(); } return instance; } } class Program { staticvoid Main(string[] args) { Singleton singletonOne = Singleton.GetInstance(); Singleton singletonTwo = Singleton.GetInstance(); if (singletonOne.Equals(singletonTwo)) { Console.WriteLine("singletonOne 和 singletonTwo 代表的是同一个实例"); } else { Console.WriteLine("singletonOne 和 singletonTwo 代表的是不同实例"); } Console.ReadKey(); } } } 4 实验结果

电涡流传感器开放性实验报告

机械工程实验教学中心 开放性实验报告实验项目:电涡流传感器综合测试实验 学生姓名汪万兴 学号201120070418 专业班级机自1103 指导教师郑洁老师 完成时间2015.03.06

目录 1 实验说明 (2) 1.1 实验目的 (2) 1.1.1 实验原理 (2) 1.1.2 专业知识 (2) 1.1.3 实践能力 (3) 1.2 实验要求 (3) 1.3 实验设备 (3) 1.3.1 实验场所 (3) 1.3.2 实验仪器 (3) 2 实验过程 (4) 2.1 实验台介绍 (4) 2.1.2 电路原理 (4) 2.2 实验内容与步骤 (5) 2.2.1 电涡流动传感器的位移特性实验 (5) 2.2.3实验结果处理 (7) 3 总结 (8)

1 实验说明 1.1 实验目的 1.了解电涡流传感器测量位移的工作原理和特性 2.了解不同的被测体材料对电涡流传感器性能的影响。 3.了解电涡流传感器在实际应用中其位移特性与被测体的形状和尺寸有关。1.1.1 实验原理 通过交变电流的线圈产生交变磁场,当金属体处在交变磁场时,根据电磁感应原理,金属体内产生电流,该电流在金属体内自行闭合,并呈旋涡状,故称为涡流。涡流的大小与金属导体的电阻率、导磁率、厚度、线圈激磁电流频率及线圈与金属体表面的距离x等参数有关。电涡流的产生必然要消耗一部分磁场能量,从而改变激磁线圈阻抗,涡流传感器就是基于这种涡流效应制成的。 电涡流传感器由平面线圈和金属涡流片组成,当线圈中通以高频交变电流后,在与其平行的金属片上会感应产生电涡流,电涡流的大小影响线圈的阻抗Z,而涡流的大小与金属涡流片的电阻率、导磁率、厚度、温度以及与线圈的距离X有关,当平面线圈、被测体(涡流片)、激励源确定,并保持环境温度不变,阻抗Z只与距离X 有关,将阻抗变化转为电压信号V输出,则输出电压是距离X的单值函数。 1.1.2专业知识 (1)电涡流动传感器的位移特性实验基本原理 通过高频电流的线圈产生磁场,当有导电体接近时,因导电体涡流效应产生涡流

土壤重金属监测开放性实验报告

宝鸡文理学院 2009 级开放性实验报告 系别:地理科学与环境工程系专业班级:给水排水工程 指导老师: xxxx 设计题目:土壤重金属监测 学生姓名: xxxxx 学号:xxxxxxxxxxxx 学期:2011-2012第二学期 地理科学与环境工程系 2012年6 月4 日

目录 1 土壤样品的采集 (1) 2 采样器具 (1) 3 采样单元的划分 (1) 4 确定采样的布点原则 (1) 5 采样点的布点设计方法 (1) 5.1对角线采样法 (1) 5.2蛇形采样法 (1) 5.3梅花形采样法 (1) 5.4网格法布点 (1) 6 采样方法 (1) 7 土壤样品的加工 (1) 8 土壤样品的分解 (1) 9 火焰原子吸收法测土壤中的总铜 (1) 10 标准曲线制作 (9) 11实验数据处理 (10)

土壤重金属监测 一个完整的环境样品的分析,包括从采样开始到出报告,样品分析流程为:采样→样品处理→分析测定→整理报告,大致可分为这四个阶段。这四个阶段所需时间及劳动强度为:样品采集6.0%,样品处理61.0%,分析测试6.0%,数据处理及报告27.0%。 1 土壤样品的采集 采集土样时务必要注意所采样品的代表性,即所采集的样品对所研究的对象应具有最大的代表性。采样要贯彻“随机”、“等量”和“多点混合”的原则进行采样 2 采样器具 工具类:不锈钢土钻、铁锹或锄头、土刀、取土器、竹片以及适合特殊采样要求的工具,分样盘、塑料布或塑料盆等用于野外现场缩分样品的工具。 器材类:GPS、照相机、卷尺、铝盒、样品袋、样品箱等。 文具类:样品标签、采样记录表、现场调查表、铅笔、资料夹等;安全防护用品:雨具、工作鞋、药品箱等。 3 采样单元的划分 由于土壤的不均一性,导致同一研究区域各土壤具有差异性,同一块土壤中不同点也具有差异,故在实地采样前,应先根据现场勘察和所搜集的有关资料,将研究范围划分为若干个采样单元。 采样单元的划分,采样单元以土类和成土母质类型为主,其次根据地形、地貌、土上设施状况、土壤类型、农田等级等因素确定,原则上应使所采土样能使所研究的间题在分析数据中得到全面的反应。在一个采样单元中,如果用多个样点的样品分别进行分析,其平均值或其他统计值(如标准差或置信区间等)的可靠性,无疑要比单独取一个样品的分析结果更大,但这样做的工作量比较大。如果把多个样点的土样等量地混合均匀,组成一个“混合样品”进行测定,工作量就可大为减少,而其测定值也可得到相近的代表性,因为混合样品的测定值,实际上相当于各个样点分别测定的平均值。总体要遵循“同一单元内的差异性尽可能地小,不同单元之间的差异性尽可能的要大”。 4 确定采样的布点原则 应根据任务的性质、复杂程度、区域规模的大小和所要求的精度统筹设计,实行科学、优化布点。布点原则是布设采样点的依据。在采样点数与采样密度确定之后,采样点该如何设置,点位如何分配,样点设在什么地方才能满足研究的需要,如何使所布设的采样点具有较好的代表性和典型性,这是布点原则所反映和体现的基本要求。 ①布点要有代表性、兼顾均匀性,采样集中在位于每个采样单元相对中心位置的典型地块,面积以1~10亩的典型地块为宜;②采集样品要具有所在单元所表现特征最明显、最稳定、最典型的性质,要避免各种非调查因素的影响,一个土壤样品只能代表一种土壤条件,

软件设计模式与软件体系结构实验报告

《软件体系结构》大作业(1) 学院:软件学院 课程名称:软件体系结构 专业班级: 学生姓名:学号: 学生姓名:学号: 指导教师: 完成时间:年月日 评分表 1、叙述各小组成员完成本题目的分工协作情况。 小组中的每个成员都先理解题目要求及涉及的设计模式,并一起完成代码编写。另外,组长负责文档制作。 2、评分表 序号姓名评分是否组长 1 2 作业正文需要包括以下内容: 1、作业题目内容的详细描述。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的 软件体系结构名称及画出相应的体系结构图。

3、画出完成本题目所设计程序的设计类图;如还有其他图,也一并画出。 4、完成本题目所设计的程序代码。 5、程序运行的典型界面截图

1、作业题目内容的详细描述。 【作业2.1-1】例2.3为使用工厂方法模式设计的汽车保险管理应用程序实例。现在需要 扩展例2.3的设计图,添加一个名为LuxuryCarInsurance的类,并且需要编写此类和其他需要添加的类的代码,详细要求参见光盘的相应作业部分。 【作业2.1-1】在例2.4中,设计并且实现了豪华(Super)和中等(Medium)别墅(House)与公寓(Condo)的查询。要求在该设计的基础上,增加一个新的类SemiDetacher(半独立式楼宇),并且编写代码,实现相应的查询功能,详细要求参见光盘的相应作业部分。 2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。 【作业2.1-1】采用的是工厂方法模式 【作业2.1-2】采用的是抽象方法模式

CSS页面布局及样式设计实验报告

实验项目名称: CSS页面布局及样式设计 (所属课程:web系统与技术) 学院:计算机学院专业班级:11级计科信息姓名:学号: 实验日期:实验地点:A06-404 合作者:指导教师:李 本实验项目成绩:教师签字:日期: 一、实验目的 (1)掌握CSS中的定位属性使用方法。 (2)掌握DIV+CSS的页面布局方式。 (3)掌握CSS中的常用属性的使用方法。 (4)理解CSS的样式构造。 二、实验条件 安装Web开发环境的微机。 三、实验内容 (1)重新对聊天室的注册页面、登陆页面和聊天页面进行页面布局。 (1)对聊天室的注册页面、登陆页面和聊天页面进行样式设计。 四、实验步骤 (1)注册页面使用CSS将注册表单居中显示,表单内嵌入表格将文本与输入域格式化显示,表单内使用label标签。 (2)登录页面中添加div层用于显示在线用户数。 (3)登录页面使用div将登录表单,在线用户数,logo图片,超链接等页面元素重新定位布局。 (4)聊天页面改用div标签并使用CSS的position定位属性进行布局,框架内的独立页面使用float属性进行布局。 (5)使用CSS设置三个页面的背景颜色或背景图片。 (6)注册页面使用CSS设计所有输入框和提交按钮的样式。 (7)登录页面使用CSS设置的超链接的字体和下划线、登录表单使用圆顶角、在线用户数使用图片数字,使用CSS设计登录按钮的显示样式。

(8)聊天页面中使用CSS设计信息发送表单和发送按钮的样式,设计用户信息列表和聊天信息段落的的显示样式。 五、实验结果 注册界面效果图及代码: //总体框架 //添加图片代码 //用户注册信息代码

注册信息

用户姓名:

用户密码:



--> 姓    别:

设计模式上机实验二实验报告

设计模式实验二 实验报告书 专业班级软件0703 学号3901070324 姓名吉亚云 指导老师伟 时间2010年4月24日 中南大学软件学院

实验二设计模式上机实验二 一、实验目的 使用PowerDesigner和任意一种面向对象编程语言实现几种常用的设计模式,加深对这些模式的理解,包括装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式。 二、实验内容 使用PowerDesigner和任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,包括根据实例绘制相应的模式结构图、编写模式实现代码,运行并测试模式实例代码。 三、实验要求 1. 正确无误绘制装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式的模式结构图; 2. 使用任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,代码运行正确无误。 四、实验步骤 1. 使用PowerDesigner绘制装饰模式结构图并用面向对象编程语言实现该模式; 2. 使用PowerDesigner绘制外观模式结构图并用面向对象编程语言实现该模式; 3. 使用PowerDesigner绘制代理模式结构图并用面向对象编程语言实现该模式; 4. 使用PowerDesigner绘制职责链模式结构图并用面向对象编程语言实现该模式; 5. 使用PowerDesigner绘制命令模式结构图并用面向对象编程语言实现该模式; 6. 使用PowerDesigner绘制迭代器模式结构图并用面向对象编程语言实现该模式; 7. 使用PowerDesigner绘制观察者模式结构图并用面向对象编程语言实现该模式; 8. 使用PowerDesigner绘制状态模式结构图并用面向对象编程语言实现该模式; 9. 使用PowerDesigner绘制策略模式结构图并用面向对象编程语言实现该模式; 10. 使用PowerDesigner绘制模板方法模式结构图并用面向对象编程语言实现该模式。 五、实验报告要求 1. 提供装饰模式结构图及实现代码; 2. 提供外观模式结构图及实现代码; 3. 提供代理模式结构图及实现代码; 4. 提供职责链模式结构图及实现代码;

设计模式实验报告

计算机科学与技术学院 实验报告 课程名称:软件设计模式 专业:计算机科学与技术班级:班 学号: 姓名:

实验一单例模式的应用 1 实验目的 1) 掌握单例模式(Singleton)的特点 2) 分析具体问题,使用单例模式进行设计。 2 实验内容和要求 很多应用项目都有配置文件,这些配置文件里面定义一些应用需要的参数数据。 通常客户端使用这个类是通过new一个AppConfig的实例来得到一个操作配置文件内容的对象。如果在系统运行中,有很多地方都需要使用配置文件的内容,系统中会同时存在多份配置文件的内容,这会严重浪费内存资源。 事实上,对于AppConfig类,在运行期间,只需要一个对象实例就够了。那么应该怎么实现呢?用C#控制台应用程序实现该单例模式。绘制该模式的UML图。 [代码截图]: namespace实验一_单例模式_ { class Program { static void Main(string[] args) { AppConfig appc1 = AppConfig.GetAppConfig(); AppConfig appc2 = AppConfig.GetAppConfig(); appc1.SetParameterA("hello"); appc2.SetParameterA("hi"); if (appc1.Equals(appc2)){ Console.WriteLine("appc1 和 appc2 代表的是同一个实例"); } else{ Console.WriteLine("appc1 和 appc2 代表的是不同实例"); } Console.WriteLine(appc1.GetParameterA()); Console.WriteLine(appc2.GetParameterA()); Console.ReadKey();

设计性实验报告格式

大学物理设计性实验报告 实验项目名称:万用表设计与组装实验仪 姓名:李双阳学号:131409138 专业:数学与应用数学班级:1314091 指导教师:_王朝勇王新练 上课时间:2010 年12 月 6 日

一、实验设计方案 实验名称:万能表的设计与组装试验仪 实验时间:2010年12月6日 小组合作: 是 小组成员:孙超群 1. 实验目的:掌握数字万用表的工作原理、组成和特性。 2. 掌握数字万用表的校准和使用。 3. 掌握多量程数字万用表分压、分流电路计算和连接;学会设计制作、使用多量程数字万用表 2、实验地点及仪器、设备和材料: 万用表设计与组装实验仪、标准数字万用表。 3、实验思路(实验原理、数据处理方法及实验步骤等): 1. 直流电压测量电路 在数字电压表头前面加一级分压电路(分压电阻),可以扩展直流电压测量的量程。 数字万用表的直流电压档分压电路如图一所示,它能在不降低输入阻抗的情况下,达到准确的分压效果。 例如:其中200 V 档的分压比为: 001.010*********==+++++M K R R R R R R R 其余各档的分压比分别为: 档位 200mV 2V 20V 200V 2000V 分压比 1 0.1 0.01 0.001 0.0001 图一 实用分压器电路 实际设计时是根据各档的分压比和总电阻来确定各分压电阻的,如先确定 M R R R R R R 1054321=++++=总 再计算200V 档的电阻:K R R R 10001.021==+总,依次可计算出3R 、4R 、5R 等各档的分压电阻值。换量程时,多刀量程转换开关可以根据档位调整小数点的位置,使用者可方便地直读出测量结果。 尽管上述最高量程档的理论量程是2000V ,但通常的数字万用表出于耐压和安全考虑,规定最高电压量限为1000V 或750V 。

2020年综合实践实验报告范本

综合实践实验报告范本大全 综合实践实验报告范文 1 综合实践活动是我校教学计划中一相非常重要的活动课题,我校的综合实践活动已经开展了三个学期,并切已经纳入我校的教学计划,按照每周 3 课时、每学期 48 课时的课时量,将其分为期准备 16 课时、中期活动 16 课时、期末总结 16 课时三个阶段。 本学期我们学校又有新的学年加入此项活动。这次综合实践活动是一次社会活动,全体实验年级利用假期时间走出校门,走出课堂,走进了社会这个大课堂的不同角落,他们积极热情地对待自己的这项活动。 在本次活动的初期准备阶段,各个班级的班长和其他的班级干部协同班主任老师进行了周密的安排,保证了这相活动的有序进行。活动期间,同学们克服了各种困难,全身心地投入到活动中,用我们中学的独特视角和方式了解社会、感知社会,在活动中同学们的各种能力得到了发展,实践能力、劳动能力、对事物的辨认能力、交往能力等都有了一定的发展。在活动中,学生们学到了校园里、课堂上无法获取的知识和能力。 这次活动的末期是整理材料,书写实践报告,这一阶段小组同学撰写实验报告,首先在班级交流,然后各班选出三个优秀小组,每个小组又在学校的交流中经过评选,最后 42组仅选出 24 组参加汇报。 活动中我们又聘请了孙茂霞、丁庆波、马玉平、刘敏、孙宗渊、李鹏、贾清松、范雪、尚云芳、孟小微、1 位教师做初评评委,此后,黄校长和教务处主任对这次活动进行了三次检查。最后学校的成果汇报交流又聘请了范雪、王静、孟晓薇、丁庆波、马玉萍、贾青松为评委,李鹏、孙宗渊为记分员,同时还请到了宋玉洪、仁莹为这次活动全程照相。 本次活动在上次活动的基础上有了明显的进步。上学期一个学年就选出了 29 组参加汇报,本次我们学校两个学年选出 24 组进行汇报,很显然,我们对这次活动的要求提高了,汇报的质量也有了很大的进步,同学们的实践能力和汇报的能力也比以前更进步了。他们的

设计模式实验报告-建造者模式

建造者模式 建造者 建造者设计模式定义了处理其他对象的复杂构建的对象设计。 问题:创建复杂对象时候,构造函数的创建会涉及通用体系结构判定。某些编程人员认为任何构造函数都应当执行适当的逻辑以创建整个对象。另外一些编程人员则认识到将某些逻辑分解入其他方法才是有意义的。采用后一种样式设计的构造函数基本上是一系列请求实例化的方法。上述两种解决方案都不是特别灵活。事实上,它们根本就是错误的解决方案。 解决方案:我们可以基于一组业务逻辑的结果来构造对象。在示例中,对象只有特定的部分必须被创建。如果完全定义对象的所有部分,那么可能导致完全预见不能的结果。 多个方法调用的复杂性问题在使用之处似乎并非太严重,但该复杂性却是缓慢增长的。如果需要经常调用这些方法,那么就应当创建一个Builder对象。 UML MyObject MyObjectBuilder -MyObject:MyObect +complexFunctionA() +createInstanceOfMyObject() +complexFunctionB() +buideMyObject(configurationOptions) +getBuiltMyObject() *MyObject类具有能够完全实现对象构造的两个方法。为了具有完整的Myobject对象,需要执行complexFunctionA()和complexFunctionB()方法。 * MyObjectBuilder类包含一个名为createInstanceOfMyObject()的方法。这个类负责创建Myobject类的一个简单实例。需要注意没有用于进一步构造的配置选项。这个类还存储MyObjectBuilder类创建的实例中的私有实例。 *buildMyObject()方法接受参数configurationOption。这个方法用于调用在MyObjectBuilder 对象中存储的MyObject对象的complexFunctionA()和complexFunctionB()方法。 *getBuildObject()方法返回MyObjectBuilder对象内部Myobject对象的私有实例,该实例既是完整的,也是正常构建的。 示例代码演示: _type=$type; } public function setSize($size) {

设计性实验报告

计算机与信息工程学院设计性实验报告 一、 实验目的 1.掌握线性时不变系统的两种描述形式—传递函数描述法、零极点增益描述法。 2.掌握两种描述形式之间的转换。 3.掌握连续和离散系统频率响应的求解 二、 实验仪器或设备 装MATLAB 软件的计算机一台。 三、 实验内容 1. 生成20个点的单位脉冲信号、单位阶跃信号,并记录下函数命令和波形。 2. 生成占空比为30%的矩形波。 3. 将连续系统 4)(s )21)(s (s 3) 1)(s -(s 0.5H(s)++++=转化为传递函数模型的描述形式。 4. 将离散系统 4-3-2-1--2 -10.5z 0.9z -1.3z 1.6z -12z 5z 3H(z)++++=转化为传递函数和零极点增益模型的的描述形式。

四、实验步骤(包括主要步骤、代码分析等) 1. 生成20个点的单位脉冲信号、单位阶跃信号,并记录下函数命令和波 形。 程序: clear,clc,close %清除变量空间变量,清除命令窗口命令,关闭图形窗口 t=-10:9; %取20个点 ft1=(t==0); %单位脉冲信号函数 ft2=(t>=0); %单位阶跃信号函数 subplot(1,2,1),stem(t,ft1,'m-o') %图像窗口1行2列的第1个子图绘制单位脉冲信号图形 title('20个点的单位脉冲信号'); %设置标题为“20个点的单位脉冲信号” subplot(1,2,2),stem(t,ft2) %图像窗口1行2列的第2个子图绘制单位阶跃信号图形 title('20个点的单位阶跃信号'); %设置标题为“20个点的单位阶跃信号” 2. 生成占空比为30%的矩形波。 程序: clear,clc,close %清除变量空间变量,清除命令窗口命令 x=0:0.001:0.6; %设置变量x的值范围 y=square(2*pi*10*x,30); %用square函数得到占空比为30%的矩形波 plot(x,y,'m'); %绘制矩形波的图像

小学自然实验报告范本

Record the situation and lessons learned, find out the existing problems and form future countermeasures. 姓名:___________________ 单位:___________________ 时间:___________________ 小学自然实验报告

编号:FS-DY-20167 小学自然实验报告 教学模式是在一定的教学思想或教学理论的指导下建立起来的,较为稳定的教学活动结构框架和活动程序。“结构框架”意在从宏观把握教学活动整体各要素之间的内部关系;“活动程序”意在突出教学模式的有序性和可行性。 自然学科是人类在认识自然的过程中所积累的知识。它与人的认识过程有较高的一致性,最适用于发现式的学习方法。实验是传授自然科学知识和培养与发展学生各种能力的重要手段。我校的教研组推出的四环节实验课教学模式,以其较完美的操作性、开放性、优效性和灵活性形成了自然实验课的基本框架,较好地揭示课堂教学的一般程序、课堂教学诸因素的内在联系和课堂教学的普遍规律。现就模式谈一下我在教学中的实践与几点体会。 一、教学模式的四个环节在实践中的具体运用 (一)提出问题阶段

提出问题阶段是当研究一个问题时,为了激发学生的求知欲望,引导学生探索并调动他们积极性的阶段。教师可结合要研究的问题,用生动形象的语言恰如其分地提问,让学生在观察和思维中发现问题。 例如,《物体的热胀冷缩》一课,先进行演示实验,在铁架台上放一平底烧瓶,瓶中装满水,用酒精灯加热,水还没烧开,瓶中的水就往外溢。教师接着问大家,你们看了这个现象有什么想法?学生一下子提出许多问题:“为什么水加热后往上溢呢?”“水难道会变多吗?” 教学时,为了激发学生探求知识的欲望,应千方百计创造性地运用各种方法,如:做游戏、讲故事、变魔术、猜谜语、出示挂图、运用幻灯等。引起学生要研究问题的兴趣,提出自己的想法。 (二)作出假设阶段 学生提出了问题,但在还没有学习有关的知识时,教师引导学生对自己的问题作出假设的回答。教师再从学生假设中引导学生逐渐进入要研究的问题中去。 例如,《水蒸气的凝结》,教师将还在冒白气的温水杯加

人脸识别系统-开放实验报告范文

开放性实验报告《人脸识别系统》 小组成员: 姓名李宏利 学号 109021075 指导老师:彭艳斌2011 年12 月

【实验名称】人脸识别系统 【实验目的】 1.对人脸识别系统的图像预处理有一定的掌握; 2.对后续操作只简单了解; 3.通过功能模块实现人脸识别系统。 【实验内容】 1.系统需求分析; 2.系统设计; 3.系统实现。 【实验步骤】 一、系统需求分析 1、目的与背景 当前社会上频繁出现的入室偷盗、抢劫、伤人等案件的不断发生,鉴于此种原因,防盗门开始走进千家万户,给家庭带来安宁;然而,随着社会的发展,技术的进步,生活节奏的加速,消费水平的提高,人们对于家居的期望也越来越高,对便捷的要求也越来越迫切,基于传统的纯粹机械设计的防盗门,除了坚固耐用外,很难快速满足这些新兴的需求:便捷,开门记录等功能。 广义的人脸识别实际包括构建人脸识别系统的一系列相关技术,包括人脸图像采集、人脸定位、人脸识别预处理、身份确认以及身份查找等;而狭义的人脸识别特指通过人脸进行身份确认或者身份查找的技术或系统。

人脸识别 生物特征识别技术所研究的生物特征包括脸、指纹、手掌纹、虹膜、视网膜、声音(语音)、体形、个人习惯(例如敲击键盘的力度和频率、签字)等,相应的识别技术就有人脸识别、指纹识别、掌纹识别、虹膜识别、视网膜识别、语音识别(用语音识别可以进行身份识别,也可以进行语音内容的识别,只有前者属于生物特征识别技术)、体形识别、键盘敲击识别、签字识别等。人脸识别主要用于身份识别。由于视频监控正在快速普及,众多的视频监控应用迫切需要一种远距离、用户非配合状态下的快速身份识别技术,以求远距离快速确认人员身份,实现智能预警。人脸识别技术无疑是最佳的选择,采用快速人脸检测技术可以从监控视频图象中实时查找人脸,并与人脸数据库进行实时比对,从而实现快速身份识别

开放性实验

计算机科学学院关于开展2012-2013年度 学生课外开放实验立项申报的通知 各班级(团支部)、学生社团: 为鼓励和引导学生积极开展课外科研活动,增强学生创新创业意识,培养学生实践动手能力,按照《西南石油大学大学生课外开放实验管理办法》(西南石大设[2012]6号)要求,我院第十二期(2012-2013年度)大学生课外开放实验立项申报工作从即日开始,本次开放实验分为校级普通项目和校级重点项目二个层次,现将相关事宜通知如下: 一、申请人资格 1.计科院全日制本科在校学生及教师。 2.申请项目的负责人和主要参与者所承担的项目每年度只能有一项。 3.已获其他资助(如“盛特杯”)立项的项目不得重复申请。 4.项目负责人具有较强的研究与组织能力。 二、选题要求 1.目标明确,有一定的理论或现实意义,技术路线与研究方法合理可行。 2.了解所研究科学领域的情况,预期研究成果有一定的创新性。 3.应围绕所学专业、个人兴趣等方面进行选题。 4.要具有一定的学术或应用价值。 5.研究内容既可以是学科发展前沿领域,也可以是当前研究热点。 三、项目申报 1.普通项目由学生自发申报,申请人自行联系指导教师,自主管理项目; 重点项目由教师组织申报,实行指导教师负责制,原则上一位指导教师负责一个项目。 2.每个项目参加的学生人数一般为3-5人。 3.申请人必须填写《西南石油大学课外开放实验普通项目立项申请表》(1 份书面和电子版),《西南石油大学课外开放实验校级重点项目申请书》(2份书面和电子版),严格按照具体要求逐项填写并报送各年级辅导员处。 4.学院将组织专家对申请项目进行评审,同时学校还将组织专家对重点项 目进行评审,评审通过后方能立项。 四、项目验收

开放实验报告

开放实验报告 开放性实验报告 移动机器人设计与制作(一) 姓名:黄家进 学号:06144008 班级:电气1401 专业:电气工程及其自动化 指导老师:赵勇 时间:20XX.10.15--20XX.12.10 目录 实验一 IO口的输出应用....................................................... (4) 一.实验目的....................................................... ......................................................... .. (4) 二.实验内容.......................................................

......................................................... .. (4) 三.实验器材....................................................... ......................................................... .. (4) 四.实验步骤....................................................... ......................................................... .. (4) 五.实验程序及电路图....................................................... . (4) 1.实验说明: ..................................................... ......................................................... .. (4) 2.实验程序: ..................................................... ......................................................... .. (4)

相关文档
最新文档