软件设计模式教学大纲.docx
软件设计模式实验教学大纲专业名称课程类别课程学分总学时理论学时实验学时计算机科学与技术专业选修课3.5644816软件工程专业选修课3. 5644816实验课程地性质,目地与任务软件设计模式是计算机有关专业中地一门理论性与实践性都很强地专业课。该实验 课程地目地是配合理论课程教学,使学生掌握实验地基本方法与基本技能,加深对软件设计 模式地基本概念地理解,使其了解常见地23种设计模式地基本原理与使用环境,学会常见设 计模式地使用方法,从而促使学生理论联系实际,能够灵活运用自己所学地理论知识进行软 件开发,增强学生地实践动手技能,并能够提高学生独立分析问题与解决问题地能力,为大学 本科高年级有关软件设计类课程打好坚实地基础,为今后从事软件开发提供必要地指导思想, 使代码编制真正工程化,从而提高代码地可重用性,可读性与可靠性。实验地教学任务是通过实验巩固并扩展软件设计模式课程地基本概念,基本理论,如:面 向对象设计原那么,创立型模式,结构型模式与行为型模式等,培养学生创新意识。通过本实验 课程,应完成以下任务:1,使学生理解7种面向对象地设计原那么与面向对象地编程技术;2,使学生掌握GoF地23种软件设计模式地使用方法;3,使学生掌握代码编制地工程化技术,为今后地工程开发打下基础。二,实验教学基本要求1,教师事先熟悉实验操作过程,将有关理论知识融于实验教学中,在实验过程中做好实验 指导。2,实验课前需要预习实验,认真阅读实验与有关资料,熟悉实验内容,实验原理,实验目地, 实验步骤;实验时能独立完成代码地编写,能独立完成实验操作。3,上机输入与调试自己所编写地程序时,能在软件开发平台上测试通过。4,实验结束后,应认真做好实验报告,认真分析实验现象与实验数据,得出实验结论。实验 报告包括以下内容:实验工程名称,实验原理,实验过程,测试数据,实验结果分析等。5,要求学生在下一个实验时上交前一次地实验报告。三,实验工程序号实验工程学时实验性质每组 人数备注验证综合设计必做选做1UML语言地使用与类 图地设计2V1V2创立型模式应用(上)4V1V3创立型模式应用(下)4V1V1结构型模式应用(上)1V175结构型模式应用(下)4V1V序号实验工程学时实验性质每组 人数备注验证综合设计必做选做6行为型模式应用(上)4V1V7行为型模式应用(中)4V1V8行为型模式应用(下)4V1V合计3043144注:各专业可以根据课程标准地学分与学时情况选取实验工程。四,实验学习内容实验一 UML语言地使用与类图地设计1,实验目地(1)理解类地基本概念,掌握如何从需求分析中抽象出类地方法。(2) 了解类间关系地基本种类,掌握如何分析类间关系地方法。(3)学会用UML语言表示类以及类之间地关系。2,主要实验仪器及材料计算机,Java SDK, Eclipse, Rational Rose 或 UMLet3,实验内容(1)通过对某应用实例(如:图书馆管理系统)进行需求分析,寻找与抽象出其中地类。(2)用UML语言对该实例中地类地关系进行建模,正确画出类图与类地相互关系。(3)写出类地主要Java源代码。实验二 创立型模式应用(上)1,实验目地(1)理解创立型模式地基本概念,基本原理与应用场景。(2)掌握单例模式(Singleton),原型模式(Prototype)地使用方法。2,主要实验仪器及材料计算机,Java SDK, Eclipse, Rational Rose 或 UMLet3,实验内容(1)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用单例模式地程序实例。(2)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用原型模式地程序实例。(3)要求满足以下儿点:1)表达创立型模式地工作原理;2)尽量符合面向对象地七 条设计原那么;3)每个实例要有类图,源代码与运行结果。实验三创立型模式应用(下)1,实验目地(1)进一步明白创立型模式地基本概念,基本原理与应用场景。(2)掌握工厂方法模式(Factory Method),抽象工厂模式(Abstract Factory),建 造者模式(Builder)地使用方法。2,主要实验仪器及材料计算机,Java SDK, Eclipse, Rational Rose 或 UMLet3,实验内容(1)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用工厂方法模式地程序实例。(2)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用抽象工厂模式地程序实例。(3)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用建造者模式地程序实例。(4)综合应用以上5种创立型模式中地假设干种开发一个应用实例。(5)要求满足以下几点:1)表达创立型模式地工作原理;2)尽量符合面向对象地七 条设计原那么;3)每个实例要有类图,源代码与运行结果。实验四 结构型模式应用(上)1,实验目地(1)理解结构型模式地基本概念,基本原理与应用场景。(2)掌握代理模式(Proxy),适配器模式(Adapter),桥接模式(Bridge)地使用方法。2,主要实验仪器及材料计算机,Java SDK, Eclipse, Rational Rose 或 UMLet3,实验内容(1)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用代理模式地程序实例。(2)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用适配器模式地程序实例。(3)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用桥接模式地程序实例。(5)要求满足以下几点:1)表达结构型模式地工作原理;2)尽量符合面向对象地七 条设计原那么;3)每个实例要有类图,源代码与运行结果。实验五 结构型模式应用(下)1,实验目地(1)进一步明白结构型模式地基本概念,基本原理与应用场景。(2)掌握装饰模式(Decorator),外观模式(Facade),享元模式(Flyweight),组合模式(pos i te)地使用方法o2,主要实验仪器及材料计算机,Java SDK, Eclipse, Rational Rose 或 UMLet3,实验内容(1)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用装饰模式地程序实例。(2)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用外观模式地程序实例。(3)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用享元模式地程序实例。(4)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用组合模式地程序实例。(5)综合应用以上7种结构型模式中地假设干种开发一个应用实例。(6)要求满足以下几点:1)表达结构型模式地工作原理;2)尽量符合面向对象地七 条设计原那么;3)每个实例要有类图,源代码与运行结果。实验六行为型模式应用(上)1,实验目地(1)理解行为型模式地基本概念,基本原理与应用场景。(2)掌握模板方法模式(Template Method),策略模式(Strategy),命令模式(mand)地使 用方法。2,主要实验仪器及材料计算机,Java SDK, Eclipse, Rational Rose 或 UMLet3,实验内容(1)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用模板方法模式地程序实例。(2)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用策略模式地程序实例。(3)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用命令模式地程序实例。(4)要求满足以下几点:1)表达行为型模式地工作原理;2)尽量符合面向对象地七 条设计原那么;3)每个实例要有类图,源代码与运行结果。实验七行为型模式应用(中)1,实验目地(1)进一步明白行为型模式地基本概念,基本原理与应用场景。(2 )掌握职责链模式(Chain of Responsibility),状态模式(State),观察者模式 (Observer),中介者模式(Mediator)地使用方法。2,主要实验仪器及材料计算机,Java SDK, Eclipse, Rational Rose 或 UMLet3,实验内容(1)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用职责链模式地程序实例。(2)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用状态模式地程序实例。(3)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用观察者模式地程序实例。(4)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用中介者模式地程序实例。(5)要求满足以下几点:1)表达行为型模式地工作原理;2)尽量符合面向对象地七 条设计原那么;3)每个实例要有类图,源代码与运行结果。实验八行为型模式应用(下)1,实验目地(1)进一步明白行为型模式地基本概念,基本原理与应用场景。(2)掌握迭代器模式(Iterator),访问者模式(Visitor),备忘录模式(Memento),解释器 模式(Interpreter)地使用方法。2,主要实验仪器及材料计算机,Java SDK, Eclipse, Rational Rose 或 UMLet3,实验内容(1)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用迭代器模式地程序实例。(2)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用访问者模式地程序实例。(3)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用备忘录模式地程序实例。(4)参考中地应用实例以及第9章中地实验指导,从生活中或软件开发案例中查找实例, 开发一个应用解释器模式地程序实例。(5)综合应用以上11种行为型模式中地假设干种开发一个应用实例。(6)要求满足以下几点:1)表达行为型模式地工作原理;2)尽量符合面向对象地七 条设计原那么;3)每个实例要有类图,源代码与运行结果。五,考核方法1,教师对学生实验过程完成情况进行登记,记入实验成绩中。2,学生完成实验后按要求撰写实验报告,根据实验报告确定每次实验成绩。3,实验成绩以实验报告与学生实际操作能力为主,参考预习,提问,出勤情况与遵守实验 室规章制度情况等综合评定,实验成绩可以按10%地比例计入课程总评成绩中。六,实验指导书及主要参考书目撰写人:审阅人:编写日期:20XX年7月