欢迎来到天天文库
浏览记录
ID:15497347
大小:1.52 MB
页数:4页
时间:2018-08-03
《实验五 工厂方法模式、抽象工厂模式和生成器模式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验五工厂方法模式、抽象工厂模式和生成器模式的应用一、实验目的通过该实验,理解工厂方法模式、抽象工厂模式和生成器模式的意图、结构,在软件开发中使用这些模式并进行功能验证。二、实验内容1.手机工厂:现实中不同品牌的手机应由不同的工厂制造,使用工厂方法模式模拟实现。图1手机工厂的类图2.微型计算机配件的生产:该系统所需要的产品族有两个:PC系列和MAC系列,产品等级结构也有两个:RAM和CPU,使用抽象工厂模式模拟实现。图2微型计算机配件生产系统的设计类图3.用程序画一个小人:要求小人要有头、身体、手和脚。使用生成器模式模拟实现。图3利用程序画小人的类图三、实验步骤与
2、要求1.对于以上题目要认真分析和理解题意,程序中要求使用相应的模式。2.上机录入,使用JDK编译器调试、运行、验证程序。3.请指导教师审查程序和运行结果并评定成绩;4.撰写并上交实验报告。四、实验原理:1、工厂方法模式当系统准备为用户提供某个类的子类的实例,又不想让用户代码和该子类形成耦合时,可以使用工厂方法模式来设计系统。工厂方法模式的关键是在一个接口或抽象类中定义一个抽象方法,该方法返回某个类的子类的实例,该抽象类或接口让其子类或实现该接口的类通过重写这个抽象方法返回某个子类的实例。适合使用工厂方法模式的情景有:l用户需要一个类的子类的实例,但不希望与该类的子
3、类形成耦合l用户需要一个类的子类的实例,但用户不知道该类有哪些子类可用。工厂方法模式的UML类图:图4工厂方法模式的类图2、抽象工厂模式当系统准备为用户提供一系列相关的对象,又不想让用户代码和创建这些对象的类形成耦合时,就可以使用抽象工厂模式来设计系统。抽象工厂模式的关键是在一个抽象类或接口中定义若干个抽象方法,这些抽象方法分别返回某个类的实例,该抽象类或接口让其子类或实现该接口的类重写这些抽象方法为用户提供一系列相关的对象。适合使用抽象工厂模式的情景有:l系统需要为用户提供多个对象,但不希望用户直接使用new运算符实例化这些对象,即希望用户和创建对象的类解耦。l
4、系统需要为用户提供多个相关的对象,以便用户联合使用它们,但又不希望用户来决定这些对象是如何关联的。l系统需要为用户提供一系列对象,但只需要用户知道这些对象有哪些方法可用,不需要用户知道这些对象的创建过程。抽象工厂模式的UML类图:图5抽象工厂模式的类图3、生成器模式当系统准备为用户提供一个内部结构复杂的对象时,可以使用生成器模式逐步地构造对象,使得对象的创建更具弹性。生成器模式的关键是将一个包含有多个组件对象的创建分成若干个步骤,并将这些步骤封装在一个称作生成器的接口中。适合使用生成器模式的情景有:l当系统准备为用户提供一个内部结构复杂的对象,而且在构造方法中编写
5、创建该对象的代码无法满足用户需求时,就可以使用生成器模式来构造这样的对象。l当某些系统要求对象的构造过程必须独立于创建该对象的类时。生成器模式的UML类图:图6生成器模式的类图五、上机报告内容1、班级、学号、姓名、实验完成日期;2、实验题目;3、设计方案:给出你的设计方案,包括结构类图及相关说明;4、源代码:设计方案中各个类和接口的源代码,包括测试主类的源代码.5、测试数据及运行结果6、总结:1)运用设计模式总结:对所运用的设计模式的名称,分类,意图,结构,角色作用的总结,所运用的面向对象设计原则。1)本次实验遇到的问题、如何解决的;本次实验的经验、体会、改进设想
6、等。六、实验成绩考核方法实验成绩由出勤、实验完成情况以及实验报告综合评定。考核成绩比例分配:出勤占15%、实验完成情况占50%、实验报告占35%七、上机安排本实验共需2个学时。
此文档下载收益归作者所有