8软件设计模式实验指导书1
软件工程实验手册v1.1

目录一、实验要求.............................................................................................................................. - 3 -1. 课程设计目标................................................................................................................. - 3 -2. 选题................................................................................................................................. - 3 -3. 分组要求......................................................................................................................... - 5 -4. 时间表............................................................................................................................. - 5 -5. 标准文档模板................................................................................................................. - 8 -6. 验收要求......................................................................................................................... - 8 -二、实验环境............................................................................................................................ - 10 -1、实验环境介绍.............................................................................................................. - 10 -2、Oracle8i/Oracle9i的安装(Server).......................................................................... - 10 -3、CCC/Harvest安装....................................................................................................... - 13 -3.1 服务器端的安装................................................................................................. - 13 -3.2 客户端的安装..................................................................................................... - 17 -三、CCC/Harvest操作指南 ..................................................................................................... - 19 -1、CCC/Harvest简介 ....................................................................................................... - 19 -1.1、CCC Harvest Administrator .............................................................................. - 19 -1.2、CCC Harvest Workbench .................................................................................. - 20 -1.3、CCC/Harvest名称表 ........................................................................................ - 20 -2、配置管理系统的建立.................................................................................................. - 21 -2.1项目的建立.......................................................................................................... - 22 -2.2阶段划分(State) ................................................................................................... - 25 -2.3设置视图(View) ................................................................................................... - 26 -2.4设置操作(Process) ............................................................................................... - 28 -2.5建立存储库(Repository) ...................................................................................... - 29 -2.6工程模型与数据仓库的连接配置基线(Baseline) .............................................. - 31 -3、权限设置...................................................................................................................... - 32 -3.1、Harvest级的权限设置 ..................................................................................... - 35 -3.2、Project级的权限设置 ...................................................................................... - 36 -3.3、State级的权限设置.......................................................................................... - 38 -3.4、Process级的权限设置...................................................................................... - 39 -3.5、Repository级的权限设置 ................................................................................ - 40 -3.6、Item Path/Item的权限设置.............................................................................. - 41 -3.7、Form级的权限设置 ......................................................................................... - 42 -4、各种操作...................................................................................................................... - 43 -4.1存取操作.............................................................................................................. - 43 -4.1.1检出(Check out) ........................................................................................ - 43 -4.1.2检入(Check in) .......................................................................................... - 47 -4.2变更控制操作...................................................................................................... - 49 -4.2.1创建包(Create Package) ........................................................................... - 49 -- 1 -4.2.2晋升(Promote)........................................................................................... - 50 -4.2.3降级(Demote) ........................................................................................... - 52 -4.2.4审批(Approve) .......................................................................................... - 53 -4.2.5做基线(快照)(Take Snapshot View) ................................................ - 55 -4.3 Item/version操作................................................................................................. - 55 -4.3.1删除Item(Remove Item) .......................................................................... - 55 -4.3.2删除版本(Delete version) ......................................................................... - 56 -4.3.3重命名文件(Rename Item) ....................................................................... - 57 -4.3.4比较视图(Compare Views) ....................................................................... - 58 -4.3.5列出版本(List version process) ................................................................ - 59 -四、基本项目过程示例............................................................................................................ - 60 -1、建立项目的配置管理结构.......................................................................................... - 60 -2、使用该项目举例.......................................................................................................... - 62 -五、WinCVS的操作指南 ........................................................................................................ - 64 -1、概要.............................................................................................................................. - 64 -2、配置.............................................................................................................................. - 64 -2.1、安装................................................................................................................... - 64 -2.2、设置................................................................................................................... - 65 -3、客户端使用.................................................................................................................. - 67 -3.1、登录................................................................................................................... - 67 -3.2、新建,删除....................................................................................................... - 67 -3.3、追加................................................................................................................... - 68 -3.4、Checkout,Checkin ............................................................................................. - 68 -3.4.1 快捷菜单中的UpDate Selection,Commit Selection ............................... - 68 -3.4.2 Undo CheckOut ......................................................................................... - 69 -3.4.3 取得旧版本的文件.................................................................................. - 69 -3.5、Merge(合并文件) .............................................................................................. - 69 -3.5.1 文本文件.................................................................................................. - 69 -3.5.2 其他文件.................................................................................................. - 69 -3.6、文件锁定........................................................................................................... - 70 -3.7、History ............................................................................................................... - 70 -3.8、版本管理........................................................................................................... - 70 -3.9、文件状态察看................................................................................................... - 71 -3.10、版本树............................................................................................................. - 71 -4、注意.............................................................................................................................. - 71 - 附录:术语解释........................................................................................................................ - 72 -- 2 -一、实验要求1. 课程设计目标我国软件工程处于相对落后,工程和团队的意识不强,软件开发以类似作坊式在开展,无法适应工业化、工程化需求。
软件设计模式实验指导书

软件设计模式实验指导书《设计模式》实验指导书10学时教师:张凯实验一单例模式的应用1 实验目的1) 掌握单例模式(Singleton)的特点 2) 分析具体问题,使用单例模式进行设计。
2 实验内容和要求很多应用项目都有配置文件,这些配置文件里面定义一些应用需要的参数数据。
AppConfig-ParameterA : string+GetParameterA()+SetParameterA()通常客户端使用这个类是通过new一个AppConfig的实例来得到一个操作配置文件内容的对象。
如果在系统运行中,有很多地方都需要使用配置文件的内容,系统中会同时存在多份配置文件的内容,这会严重浪费内存资源。
事实上,对于AppConfig类,在运行期间,只需要一个对象实例就够了。
那么应该怎么实现呢?用C#控制台应用程序实现该单例模式。
绘制该模式的UML图。
实验二工厂模式的应用1 实验目的1) 掌握工厂模式(Factory)的特点 2) 分析具体问题,使用工厂模式进行设计。
2 实验内容和要求有一个OEM制造商代理做HP笔记本电脑(Laptop),后来该制造商得到了更多的品牌笔记本电脑的订单Acer,Lenovo,Dell,该OEM商发现,如果一次同时做很多个牌子的本本,有些不利于管理。
利用工厂模式改善设计,用C#控制台应用程序实现该OEM制造商的工厂模式。
绘制该模式的UML图。
实验三抽象工厂模式的应用1 实验目的1) 掌握抽象工厂模式(Abstract Factory)的特点 2) 分析具体问题,使用抽象工厂模式进行设计。
2 实验内容和要求麦当劳(McDonalds)和肯德基(KFC)快餐店都经营汉堡(Hamburg)和可乐(Cola),用C#控制台应用程序实现这两个快餐店经营产品的抽象工厂模式。
绘制该模式的UML图。
实验四建造者模式的应用1 实验目的1) 掌握建造者模式(Builder)的特点2) 分析具体问题,使用建造者模式进行设计。
《软件工程》实验指导书(软件操作类)

《—软件工程—》实验指导书编写适用专业:计算机科学与技术网络工程湖南人文科技学院计算机科学技术系年月前言《软件工程》是计算机科学与技术专业本科生的一门实践性较强的专业必修课程。
软件工程实验是验证,巩固和补充课堂讲授的理论知识,是《软件工程》课程中一个重要的,不可或缺的实践环节。
其目的是使学生能够针对具体软件工程项目,全面掌握软件工程管理,软件需求分析,软件初步设计,软件详细设计等阶段的方法和技术。
通过实验训练,达到以下目的:使学生进一步了解和掌握软件工程原理,提高对实际项目的分析和设计能力,通过实验课程,熟悉和基本掌握软件工程方法学,软件开发的过程,文档资料的编写格式及规范,全面领会和贯通所学习的理论知识,从而培养学生综合运用所学课程知识,分析解决问题的能力,培养学生进行软件开发的能力,培养学生的合作意识和团队精神,培养学生对技术文档的编写能力, 从而使学生提高软件工程的综合能力,提高软件项目的管理能力.实验总体要求软件工程实验要求学生采用"项目小组"的形式,结合具体的开发项目进行设计。
具体要求如下:1.班级按项目小组进行分组,每组不得超过6人2.每个项目小组选出项目负责人或项目经理,由项目经理召集项目组成员讨论,选定开发项目3.项目中的每项任务要落实到人且规定该任务的起止日期和时间4.题目自定或由教师提供相关课题目录实验一:项目可行性分析 (1)实验二:项目需求分析 (2)实验三:项目总体设计 (3)实验四:项目详细设计及编码实现 (4)实验五:软件测试 (6)实验一:项目可行性分析实验学时:2实验类型:设计实验要求:必修一、实验目的通过对待实施项目进行全面分析,撰写项目的可行性分析报告,掌握可行性研究的有关概念和具体分析过程,并明确从哪些方面进行可行性分析;掌握软件项目成本效益分析的常用手段;使学生掌握可行性研究报告的书写格式、注意事项和研究内容。
二、实验内容布置“运动会信息管理系统可行性分析”或其它类似题目,到应用现场进行实际调查,了解用户业务情况、数据、网络和需求情况,对问题进行可行性分析,开展可行性研究,并编写出可行性分析报告。
软件工程实验指导书

软件工程实验指导书实验一软件的问题定义及可行性分析一、实验类型:验证二、实验目的与任务:通过本次实验,掌握需求调查与可行性研究的方法、过程和步骤,加深对可行性分析有关理论的理解,为学习后面的需求分析与软件设计打下一个良好的基础。
三、预习要求:要求学生实验前要认真消化书本和课堂教学内容,精心准备本次实验。
四、实验基本原理:可行性研究任务和过程,学生掌握可行性研究的有关概念和具体分析过程,并明确从哪些方面进行可行性分析,成本效益分析的技术,掌握软件项目成本效益分析的常用手段。
五、实验仪器及设备(或工具软件):1. 硬件环境 :PC 机2. 软件环境 :Windows环境,C语言系统或其它语言工具六、实验内容:1、选定需模拟开发的软件课题。
2、对选定的课题进行问题定义。
3、对选定的课题进行可行性分析。
七、实验步骤:(1) 围绕题目独立进行需求收集、分析(2) 提出解决问题的初步方案(3) 从技术、操作、经济等方面进行可行性分析(4) 独立写出需求调查与可行性分析报告八、注意事项:注意软件的使用,保护电脑九、实验报告要求:条理清晰,字迹工整实验二软件的需求分析一、实验类型:验证性实验二、实验目的与任务:要求学生熟练掌握MATLAB最优化工具箱函数的选用,学会函数linprog的调用格式。
并根据算法步骤设计计算程序以求解具体问题。
三、预习要求:掌握软件的需求分析报告的书写方法和技术要求。
四、实验基本原理:需求分析的基本过程和分析建模方法,数据流图、数据字典软件结构图等概念,软件设计的具体过程和原理五、实验仪器及设备(或工具软件):1 硬件环境 :PC2 软件环境 : Windows环境,C语言系统或其它语言工具六、实验内容:1、实现实验一选定的课题的进行需求分析。
2、实现最后的分析报告,主要是数据流图和数据字典。
七、实验步骤:1.围绕指定的题目到相关单位进行需求分析;2.综合利用Internet网和相关书籍整理并完善需求分析;3.画出系统数据流图(分清系统是事务型还是加工型);4.得出系统数据字典;5.写出需求分析说明书和软件设计说明书。
08级软件工程专业《软件测试技术》实验文档1

《软件测试技术》实验指导书适用专业:软件工程(本科)实验学时:30一、适用范围大纲适用于软件工程专业本科教学使用。
二、课程名称《软件测试技术》三、实验教学目的和要求1、实验目的本实验课程配合《软件测试技术》理论课同步开设,其中包括验证型、设计型和综合型实验。
本实验课程着眼于理论与应用的结合,注重培养学生软件测试的实际动手能力,增强软件工程项目的质量管理意识。
通过实验教学,使学生掌握软件测试的方法和技术,并能运用软件测试工具进行自动化测试。
2、实验要求实验前要充分做好准备工作:1.复习和掌握与本实验有关的知识内容;2.预习、思考实验内容;3.对实验内容进行分析和设计。
实验过程中,实验者必须服从指导教师和实验室工作人员的安排,遵守纪律与实验制度,爱护设备及卫生。
在指定的实验时间内,必须到实验室内做实验。
对于上机过程中出现的问题,尽量先独立思考和解决;对于难以解决的问题可以和同学交流或询问老师;对于同一个实验题目,可以考虑多种方法来实现,然后比较并选择出一种较为有效的方法来实现。
对于设计型和验证型实验,实验时一人一组,独立上机。
对于综合型实验,每四人组成一个小组,由组长来组织管理小组成员,共同完成实验内容。
四、实验项目与学时分配序号实验项目学时数实验类型1实例程序设计4设计2功能性测试(黑盒测试)6设计、验证4单元测试5QTP 的使用6LoadRunner 的使用7WinRunner 的使用8Web 系统测试2设计、验证4验证4验证2验证4综合合计30实验 1 测试的实例程序的设计( 4 学时)一、实验目的完成测试程序的编写,后续的实验将以这些程序作为测试对象用不同的测试方法来进行测试。
二、实验内容1、设计三角形问题的程序2、设计 Nextdate 函数的程序3、设计佣金问题的程序4、简单 ATM 系统5、货币转换器三、实验步骤1、第 2 周完成各程序的总体设计和前两个程序的实现并进行调试。
2、第3、4 周实现后 3 个程序的功能。
软件工程实验一指导书

软件工程实验实验一结构化分析与设计实验实验目的1、掌握结构化分析方法2、掌握业务流程分析方法和业务流程图的绘制实验内容:任务一绘制系统业务流程图系统流程图是描绘物理系统的传统工具。
是用图形符号以黑盒子形式描绘系统里面的每个部件(程序、文件、数据库、表格、人工过程等等)。
表达的是信息在系统各部件之间流动的情况,而不是对信息进行加工处理的控制过程。
试绘制工资管理系统的系统流程图,根据系统流程图的符号说明仔细理解下图含义:图1-1工资管理系统系统流程图图1-2基本符号图1-3 系统符号操作步骤:1 .运行Microsoft Office Visio 2010图1-4 运行Microsoft Office Visio 2010 2.选择流程图中的基本流程图模板图1-5 选中基本流程图模板3.用鼠标选拉图标进行绘图任务二分析系统业务流程和绘制系统业务流程图案例一:总务办公管理系统系统简介:某单位准备开发一个购买办公用品和设备的总务办公管理系统。
办公用品的购买申请由各科室提出,由负责总务工作的办公室统一收集。
其中,购买申请的金额低丁500元(含500元)可以由总务办公室直接审批,而高丁500元的购买申请由机构主管领导审批,批准的购买申请形成采购活单由采购员负责购买,同时应记录每次实际购买活单,进行入账。
在提出购买申请时要包括下述数据:申请单位、物品名称、物品数量、预计价格、物品用途等。
每次购买完成后应记录以下数据:物品名称、物品数量、价格、总金额、购买日期、经办人等。
请对该系统进行业务流程分析后,绘制出该系统的系统流程图。
案例二:火车票预订系统系统简介:某高校后勤集团为了学生寒暑假返乡,办理代学生预订返乡火车票事务,订票必须提前三天办理,后勤订票处提前三天向火车站办理购票事务。
订票处使用一台微机处理订票后购票事务,学生订票一次称为一个事务,由订票员将其输入在微机中,系统核实订单后,将订票信息记录放在订票库中。
软件工程实验指导书

《软件工程》实验指导书(一)一、实验题目:学生成绩管理系统、图书借阅管理系统、工资管理系统、网络订餐系统二、实验目标通过独立完成项目分析,加深对软件开发的流程和方法的理解,建立软件工程的思想,同时,明确软件开发的成本和时间管理的相关概念。
三、实验内容与要求1. 在实验题目列出的几个系统中选择一个作为自己要开发的软件系统,要求该系统有明确的功能需求。
2. 对系统进行需求分析4. 编写需求规格说明书,在该部分要求有数据流程图(可用office中的visio绘制)、主要数据项的数据字典描述及主要加工的逻辑说明(自己选择结构语言、判定树、判定表等)。
题目描述:1.学生成绩管理设计要求:本系统中主要有学生管理中的基本信息、入学成绩、家庭成员、职务信息的录入、查询;对学生成绩的动态管理,并具有初始化、输入、显示、删除、查找、插入、追加、保存、读入、计算、拷贝、排序、索引、分类统计、退出;用户管理中的修改密码、添加用户、删除用户等操作;对数据的备份及恢复。
2.图书借阅管理系统设计要求:该系统要求能够具有图书管理和会员管理的功能,并且能够具有增加图书、查询图书、删除图书、图书借阅——借书、还书的功能,还具有增加会员、查询会员、删除会员、借书信息等功能。
3.工资管理系统设计要求:该系统要求实现一个单位最基本的财务管理——工资管理。
该系统应该具有:初始化、输入、显示、单条显示、删除、查找、插入、追加、保存、读入、计算工资、拷贝、排序、索引、分类统计等功能。
4.网络订餐系统设计要求:用户可在网上订餐位,并可预先定菜、下单,用餐完毕后可进行评价及留言;管理员对各餐位有管理功能,并可接受预定的菜单,查询食物是否可用的状态,发布餐厅的餐位状态及食物状态。
8级软件工程专业《软件测试技术》实验文档_马丽6

《软件测试技术》实验指导书适用专业:软件工程<本科)实验学时:30一、适用范围大纲适用于软件工程专业本科教案使用。
二、课程名称《软件测试技术》三、实验教案目的和要求1、实验目的本实验课程配合《软件测试技术》理论课同步开设,其中包括验证型、设计型和综合型实验。
本实验课程着眼于理论与应用的结合,注重培养学生软件测试的实际动手能力,增强软件工程工程的质量管理意识。
通过实验教案,使学生掌握软件测试的方法和技术,并能运用软件测试工具进行自动化测试。
2、实验要求实验前要充分做好准备工作:1.复习和掌握与本实验有关的知识内容;2.预习、思考实验内容;3.对实验内容进行分析和设计。
实验过程中,实验者必须服从指导教师和实验室工作人员的安排,遵守纪律与实验制度,爱护设备及卫生。
在指定的实验时间内,必须到实验室内做实验。
对于上机过程中出现的问题,尽量先独立思考和解决;对于难以解决的问题可以和同学交流或询问老师;对于同一个实验题目,可以考虑多种方法来实现,然后比较并选择出一种较为有效的方法来实现。
对于设计型和验证型实验,实验时一人一组,独立上机。
对于综合型实验,每四人组成一个小组,由组长来组织管理小组成员,共同完成实验内容。
四、实验工程与学时分配实验1测试的实例程序的设计<4学时)一、实验目的完成测试程序的编写,后续的实验将以这些程序作为测试对象用不同的测试方法来进行测试。
二、实验内容1、设计三角形问题的程序2、设计Nextdate函数的程序3、设计佣金问题的程序4、简单ATM系统5、货币转换器三、实验步骤1、第2周完成各程序的总体设计和前两个程序的实现并进行调试。
2、第3、4周实现后3个程序的功能。
四、实验要求1、用C或C++、JA V A语言开发程序,根据题目要求实现程序功能;2、画出程序功能的实现图<流程图或数据流图或对象<类)模型或状态图等);3、撰写实验报告;4、打包各程序相关资料且上交。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《设计模式》课程实验指导书
软件工程教研室
计算机与信息工程学院
2011年6月
实验总体说明
1.实验总体目标
配合设计模式的教学,培养学生的实际操作能力。
2.实验课时分配
实验项目学时
实验一A d a p t e r设计模式2
实验二BRIDGE设计模式2
实验三SINGLETON设计模式2
实验四PROXY设计模式2
实验五Factory Method设计模式2
实验六COMMAND设计模式2
实验七INTERPRETER设计模式2
实验八ITERATOR设计模式2
实验九VISITOR设计模式2
请根据自身情况,选作其中部分模式。
3.实验环境
操作系统:Win2000,WinXP;
开发语言:C++,Java,C#
开发环境:VC++6.0,Eclipse,VS Studio2005等
4.实验总体要求
●按照各项实验内容做实验,包括操作、观察、记录、分析,通过操作和观察获得直
观印象,有些实验还应该从获得的数据中分析软件的内部功能;
●
●对提供源程序的实验,首先要阅读,理解和掌握程序的设计思想和采用的算法,在
理解源程序的基础进行改动和扩充;
●
●部分实验由于实验条件的限制,可能暂时不能进行,但也要按实验指导说明的操作
步骤去理解和掌握;
●
●每项实验均应提交实验报告,实验报告的内容可参照实验的具体要求,但总体上应
包括以下内容:实验题目,实验内容说明,实验准备情况,实验记录,实验结果分析,算法描述,程序段,实验过程中遇到的问题等。
实验一A d a p t e r设计模式
1.实验目的
将一个类的接口转换成客户希望的另外一个接口。
A d a p t e r模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
有时,为复用而设计的工具箱类不能够被复用的原因仅仅是因为它的接口与专业应用领域所需要的接口不匹配。
2.实验环境
●VC++
●JAV A
●C#
3.实验内容
设计一个A d a p t e r案例并实现,并撰写设计报告。
4.实验要求
◆试验要求包含典型的A d a p t e r结构。
◆程序能够明确表达设计思想。
实验二BRIDGE设计模式
1.实验目的
将抽象部分与它的实现部分分离,使它们都可以独立地变化。
当一个抽象可能有多个实现时,通常用继承来协调它们。
抽象类定义对该抽象的接口,而具体的子类则用不同方式加以实现。
但是此方法有时不够灵活。
继承机制将抽象部分与它的实现部分固定在一起,使得难以对抽象部分和实现部分独立地进行修改、扩充和重用。
2.实验环境
●VC++
●JAV A
●C#
3.实验内容
设计一个BRIDGE案例并实现,并撰写设计报告。
4.实验要求
◆试验要求包含典型的BRIDGE结构。
◆程序能够明确表达设计思想。
实验三SINGLETON设计模式
1.实验目的
保证一个类仅有一个实例,并提供一个访问它的全局访问点。
让类自身负责保存它的唯一实例。
这个类可以保证没有其他实例可以被创建(通过截取创建新对象的请求),并且它可以提供一个访问该实例的方法。
2.实验环境
●VC++
●JAV A
●C#
3.实验内容
设计一个SINGLETON案例并实现,并撰写设计报告。
4.实验要求
◆试验要求包含典型的SINGLETON结构。
◆程序能够明确表达设计思想。
实验四PROXY设计模式
1.实验目的
为其他对象提供一种代理以控制对这个对象的访问。
对一个对象进行访问控制的一个原因是为了只有在我们确实需要这个对象时才对它进行创建和初始化。
我们考虑一个可以在文档中嵌入图形对象的文档编辑器。
有些图形对象(如大型光栅图像)的创建开销很大。
但是打开文档必须很迅速,因此我们在打开文档时应避免一次性创建所有开销很大的对象。
因为并非所有这些对象在文档中都同时可见,所以也没有必要同时创建这些对象。
2.实验环境
●VC++
●JAV A
●C#
3.实验内容
设计一个PROXY案例并实现,并撰写设计报告。
4.实验要求
◆试验要求包含典型的PROXY结构。
◆程序能够明确表达设计思想。
实验五Factory Method设计模式
1.实验目的
定义一个用于创建对象的接口,让子类决定实例化哪一个类。
Factory Method 使一个类的实例化延迟到其子类。
框架使用抽象类定义和维护对象之间的关系。
这些对象的创建通常也由框架负责。
考虑这样一个应用框架,它可以向用户显示多个文档。
在这个框架中,两个主要的抽象是类A p p l i c a t i o n和D o c u m e n t。
这两个类都是抽象的,客户必须通过它们的子类来做与具体应用相关的实现。
2.实验环境
●VC++
●JAV A
●C#
3.实验内容
设计一个Factory Method案例并实现,并撰写设计报告。
4.实验要求
◆试验要求包含典型的Factory Method结构。
◆程序能够明确表达设计思想。
实验六COMMAND设计模式
1.实验目的
将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。
有时必须向某对象提交请求,但并不知道关于被请求的操作或请求的接受者的任何信息。
例如,用户界面工具箱包括按钮和菜单这样的对象,它们执行请求响应用户输入。
但工具箱不能显式的在按钮或菜单中实现该请求,因为只有使用工具箱的应用知道该由哪个对象做哪个操作。
而工具箱的设计者无法知道请求的接受者或执行的操作。
2.实验环境
●VC++
●JAV A
●C#
3.实验内容
设计一个COMMAND案例并实现,并撰写设计报告。
4.实验要求
◆试验要求包含典型的COMMAND结构。
◆程序能够明确表达设计思想。
实验七INTERPRETER设计模式
1.实验目的
给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。
如果一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子。
这样就可以构建一个解释器,该解释器通过解释这些句子来解决该问题。
2.实验环境
●VC++
●JAV A
●C#
3.实验内容
设计一个INTERPRETER案例并实现,并撰写设计报告。
4.实验要求
◆试验要求包含典型的INTERPRETER结构。
◆程序能够明确表达设计思想。
实验八ITERATOR设计模式
1.实验目的
提供一种方法顺序访问一个聚合对象中各个元素,而又不需暴露该对象的内部表示
一个聚合对象,如列表(list),应该提供一种方法来让别人可以访问它的元素,而又不需暴露它的内部结构.此外,针对不同的需要,可能要以不同的方式遍历这个列表。
但是即使可以预见到所需的那些遍历操作,你可能也不希望列表的接口中充斥着各种不同遍历的操作。
有时还可能需要在同一个表列上同时进行多个遍历。
2.实验环境
●VC++
●JAV A
●C#
3.实验内容
设计一个ITERATOR案例并实现,并撰写设计报告。
4.实验要求
◆试验要求包含典型的ITERATOR结构。
◆程序能够明确表达设计思想。
10实验九VISITOR 设计模式
1.实验目的
表示一个作用于某对象结构中的各元素的操作。
它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。
考虑一个编译器,它将源程序表示为一个抽象语法树。
该编译器需在抽象语法树上实施某些操作以进行“静态语义”分析,例如检查是否所有的变量都已经被定义了。
它也需要生成代码。
因此它可能要定义许多操作以进行类型检查、代码优化、流程分析,检查变量是否在使用前被赋初值,等等。
2.实验环境
●VC++
●JAV A
●C#
3.实验内容
设计一个VISITOR 案例并实现,并撰写设计报告。
4.实验要求
◆
试验要求包含典型的VISITOR 结构。
◆
程序能够明确表达设计思想。