设计模式教学大纲
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《设计模式》课程教学大纲
一课程说明
1.课程基本情况
课程名称:设计模式
英文名称:Design Patterns
课程编号:2413229
开课专业:计算机科学与技术
开课学期:第5学期
学分/周学时:3/3
课程类型:专业方向选修课
2.课程性质(本课程在该专业的地位作用)
本课程是计算机科学与技术专业的一门专业方向选修课。
本课程在第四学期课程中讲解,在前期学生已经学习了.Net专业的基本课程,具有一定的项目开发经验,但对面向对象思想的认识较肤浅,对设计模式还没有概念。
通过本门课的学习,使学生对面向对象有一个深入的了解,通过程序的不断重构和演变,把设计模式的学习门槛降低,使学生初步掌握程序的设计模式。
3.本课程的教学目的和任务
掌握面向对象基础知识; 掌握创建型设计模式;掌握结构型模式;掌握行为模式。
4.本课程与相关课程的关系、教材体系特点及具体要求
这门课程的先修课程为《面向对象程序设计》、《数据结构》、《C#编程1、2》,后续课程为《软件工程》。
5.教学时数及课时分配
二教材及主要参考书
(1)Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides著. 李英军, 马晓星, 蔡敏, 刘建中等译. 设计模式:可复用面向对象软件的基础. 北京: 机械工业出版社, 2004.
(2)阎宏著. Java与模式. 北京: 电子工业出版社, 2004
三教学方法和教学手段说明
主要使用多媒体教室进行理论讲解和演示实验步骤,然后再计算机实验室指导学生进行相关实验并撰写实验报告。
四成绩考核办法
成绩分为平时作业、实验报告和期终考试三部分组成,比例为20%、20%、60%。
评定学期成绩时结合平时出勤情况得出该门课成绩。
五教学内容
第一讲面向对象基础(理论2学时,实验2学时)
一、教学目的
掌握面向对象基础知识
二、教学重点
面向对象中多态和接口的使用
三、教学难点
面向对象中多态和接口的使用
四、讲授要求
回顾、讲解清楚面向对象基础知识。
五、讲授要点
1、类与实例
2、构造方法、方法重载
3、属性与修饰符
4、封装、继承、多态
5、重构、抽象类、接口
6、集合、泛型
7、委托与事件
六、实验及实践要求
实验一:面向对象的基础知识
1、实验项目名称:面向对象的基础知识
2、实验类型:基础
3、学时分配:2学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Console项目,针对每一个
面向对象的概念编写一个类来进行演示;(2)添加完整的XML注释文档,以便容易理解。
第二讲简单工厂模式(理论2学时,实验2学时)
一、教学目的
掌握简单工厂模式的使用。
二、教学重点
对程序的可维护性、可扩展性、可复用性及灵活性的理解;
对紧耦合和松耦合的理解。
三、教学难点
对UML类图的理解;
简单工厂模式的使用。
四、讲授要求
讲解清楚简单工厂模式的原理、意图和使用场合、注意事项。
五、讲授要点
1、代码编写规范
2、面向对象编程
3、面向对象的好处
4、紧耦合与松耦合
5、简单工厂模式
6、UML类图
六、实验及实践要求
实验二:简单工厂模式
1、实验项目名称:简单工厂模式
2、实验类型:基础
3、学时分配:2学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Console项目,新建一个类,
使用简单工厂模式;并在Programs.cs中测试它;(2)添加完整的XML
注释文档,以便容易理解。
第三讲策略模式(理论4学时,实验2学时)
一、教学目的
掌握策略模式的使用。
二、教学重点
对程序的可维护性、可扩展性、可复用性及灵活性的理解;
对策略模式的理解和使用。
三、教学难点
对策略模式的理解和使用。
四、讲授要求
讲解清楚策略模式的原理、意图和使用场合、注意事项。
五、讲授要点
1. 商场收银软件
2. 简单工厂实现商场收银
3. 策略模式
4. 策略模式实现
5. 策略与简单工厂结合
6. 策略模式解析
六、实验及实践要求
实验三:策略模式
1、实验项目名称:策略模式
2、实验类型:基础
3、学时分配:2学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Console项目,新建一个类,
使用策略模式;并在Programs.cs中测试它;(2)添加完整的XML注释文档,以便容易理解。
第四讲工厂方法模式(理论4学时,实验2学时)
一、教学目的
掌握工厂方法模式的使用。
二、教学重点
对程序的可维护性、可扩展性、可复用性及灵活性的理解;
对工厂方法模式的理解和使用。
三、教学难点
对工厂方法模式的理解和使用。
四、讲授要求
讲解清楚工厂方法模式的原理、意图和使用场合、注意事项。
五、讲授要点
1. 简单工厂模式实现
2. 工厂方法模式实现
3. 简单工厂VS工厂方法模式
六、实验及实践要求
实验四:工厂方法模式
1、实验项目名称:工厂方法模式
2、实验类型:基础
3、学时分配:2学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Console项目,新建一个类,
使用工厂方法模式;并在Programs.cs中测试它;(2)添加完整的XML 注释文档,以便容易理解。
第五讲装饰模式(理论4学时,实验2学时)
一、教学目的
掌握装饰模式的使用。
二、教学重点
对程序的可维护性、可扩展性、可复用性及灵活性的理解;
对装饰模式的理解和使用。
三、教学难点
对装饰模式的理解和使用。
四、讲授要求
讲解清楚装饰模式的原理、意图和使用场合、注意事项。
五、讲授要点
1. 程序外观版本演进
2. 装饰模式
3. 装饰模式总结
六、实验及实践要求
实验五:装饰模式
1、实验项目名称:装饰模式
2、实验类型:基础
3、学时分配:2学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Windows项目,新建一个类,
使用装饰模式; (2)添加完整的XML注释文档,以便容易理解。
第六讲代理模式(理论4学时,实验2学时)
一、教学目的
掌握代理模式的使用。
二、教学重点
对程序的可维护性、可扩展性、可复用性及灵活性的理解;
对代理模式的理解和使用。
三、教学难点
对代理模式的理解和使用。
四、讲授要求
讲解清楚代理模式的原理、意图和使用场合、注意事项。
五、讲授要点
1. 为别人做嫁衣
2. 没有代理的代码
3. 只有代理的代码
4. 符合实际的代码
5. 代理模式
6. 代理模式应用
六、实验及实践要求
实验六:代理模式
1、实验项目名称:代理模式
2、实验类型:基础
3、学时分配:2学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Windows项目,新建一个类,
使用代理模式; (2)添加完整的XML注释文档,以便容易理解。
第七讲原型模式(理论4学时,实验2学时)
一、教学目的
掌握原型模式的使用。
二、教学重点
对程序的可维护性、可扩展性、可复用性及灵活性的理解;
对原型模式的理解和使用。
三、教学难点
对原型模式的理解和使用。
四、讲授要求
讲解清楚原型模式的原理、意图和使用场合、注意事项。
五、讲授要点
1. 夸张的简历
2. 简历代码初步实现
3. 原型模式
4. 简历的原型实现
5. 浅复制与深复制
6. 简历的深复制实现
六、实验及实践要求
实验七:原型模式
1、实验项目名称:原型模式
2、实验类型:基础
3、学时分配:2学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Windows项目,新建一个类,
使用原型模式; (2)添加完整的XML注释文档,以便容易理解。
第八讲模板方法模式(理论4学时,实验2学时)
一、教学目的
掌握模板方法模式的使用。
二、教学重点
对程序的可维护性、可扩展性、可复用性及灵活性的理解;
对模板方法模式的理解和使用。
三、教学难点
对模板方法模式的理解和使用。
四、讲授要求
讲解清楚模板方法模式的原理、意图和使用场合、注意事项。
五、讲授要点
1. 重复=易错+难改
2. 提炼代码
3. 模板方法模式
4. 模板方法模式特点
六、实验及实践要求
实验八:模板方法模式
1、实验项目名称:模板方法模式
2、实验类型:基础
3、学时分配:2学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Windows项目,新建一个类,
使用模板方法模式; (2)添加完整的XML注释文档,以便容易理解。
第九讲抽象工厂模式(理论4学时,实验2学时)
一、教学目的
掌握抽象工厂模式的使用。
二、教学重点
对程序的可维护性、可扩展性、可复用性及灵活性的理解;
对抽象工厂模式的理解和使用。
三、教学难点
对抽象工厂模式的理解和使用。
四、讲授要求
讲解清楚抽象工厂模式的原理、意图和使用场合、注意事项。
五、讲授要点
1. 最基本的数据访问程序
2. 用了工厂方法模式的数据访问程序
3. 用了抽象工厂模式的数据访问程序
4. 抽象工厂模式
5. 抽象工厂模式的优点与缺点
6. 用简单工厂来改进抽象工厂
7. 用反射+抽象工厂的数据访问程序
8. 用反射+配置文件实现数据访问程序
六、实验及实践要求
实验九:抽象工厂模式
1、实验项目名称:抽象工厂模式
2、实验类型:基础
3、学时分配:2学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Windows项目,新建一个类,
使用抽象工厂模式; (2)添加完整的XML注释文档,以便容易理解。
第十讲外观模式(理论4学时)
一、教学目的
掌握外观模式的使用。
二、教学重点
对程序的可维护性、可扩展性、可复用性及灵活性的理解;
对外观模式的理解和使用。
三、教学难点
对外观模式的理解和使用。
四、讲授要求
讲解清楚外观模式的原理、意图和使用场合、注意事项。
五、讲授要点
1. 股民炒股代码
2. 投资基金代码
3. 外观模式
4. 何时使用外观模式
六、实验及实践要求
实验十:外观模式(选做)
1、实验项目名称:外观模式
2、实验类型:基础
3、学时分配:0学时
4、每组人数:1人
5、实验内容及要求:(1)使用VS2008新建一个Windows项目,新建一个类,
使用外观模式; (2)添加完整的XML注释文档,以便容易理解。