《面向对象方法学》教学大纲.doc_第1页
《面向对象方法学》教学大纲.doc_第2页
《面向对象方法学》教学大纲.doc_第3页
《面向对象方法学》教学大纲.doc_第4页
《面向对象方法学》教学大纲.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面向对象方法学教学大纲(理论课程及实验课程适用)1、 课程信息课程名称(中文):面向对象方法学课程名称(英文):Object-Oriented Method课程类别:专业主干课课程性质:必修计划学时:48(其中课内学时:48,课外学时:0)计划学分:3先修课程:面向对象程序设计、软件工程选用教材:面向对象分析与设计(UML2.0版)(美)Mike ODocherty 俞志翔 译 清华大学出版社,2005. (国外经典教材)开课院部:计算机科学与工程学院适用专业:软件工程专业课程负责人:易国洪课程网站:暂无二、课程简介(中英文)本课程主要介绍面向对象的基本概念,面向对象的分析与设计的产生、发展以及重要意义;讲授面向对象的分析与设计的策略;详细介绍面向对象的系统分析与设计方法、技术和开发过程,并探讨面向对象方法的几个典型的应用领域。开设面向对象的分析与设计课程是为了使学生具有面向对象分析、设计的相关知识,具备使用该方法开发软件的基本能力,为他们在今后的工作中,适应软件开发的变化,研究和开发软件打下良好的基础。本课程可作为软件工程专业的专业课。通过比较全面、概括性的讲述面向对象分析与设计中的一些基础性知识和重要概念,并配合实践教学,使学生能够达到以下教学目标:l 使学生清楚面向对象的分析与设计的基本概念。l 了解面向对象技术与传统技术的区别与联系;以及该技术的发展趋势。l 掌握面向对象的分析设计风格;并可将面向对象的思想、方法及过程应用到系统分析和系统设计中去。l 最终使学生具备使用面向对象方法开发软件的相应知识和能力。This course introduces the basic concepts of object-oriented, object-oriented analysis and design production, development and significance; teach object-oriented analysis and design strategies; details of object-oriented systems analysis and design methods, techniques and development process, object-oriented approach and to explore a few typical applications. Creation of object-oriented analysis and design course is designed to enable students to have an object-oriented analysis, knowledge of the design, with the use of the method development software is the ability for them in the future work to adapt the software development changes, research and development of software lay a good foundation. This course can be used as a professional software engineering courses.Through more comprehensive, embracing about object-oriented analysis and design of some basic knowledge and key concepts, and in line with the practice of teaching, teaching to enable students to achieve the following objectives:l make students understand the basic concepts of object-oriented analysis and design.l understand object-oriented technology and traditional technology differences and relations; and the development trend of the technology.l grasp of object-oriented analysis and design style; and object-oriented ideas, methods and processes applied to the system analysis and system designs.l eventually equip students with the use of object-oriented software development method appropriate knowledge and ability.三、课程教学要求序号专业毕业要求课程教学要求关联程度1工程知识如何使用UML进行需求分析,软件项目设计。H2问题分析应用面向对象方法学的基本思想,分析问题域及其需求,能够抽象出有效表达问题的对象模型(即数据类型)。H3设计/开发解决方案根据对象模型,合理设计基于类的数据类型描述客观事物及其概念,并应用类及其方法求解较复杂的工程问题。H4研究研究UML case正向工具和逆向工具M5使用现代工具熟练使用VC、.net、eclipse环境和工具,熟练使用工具,提高软件的设计和开发效率。6工程与社会所有的软件项目来源于社会和生活实际,要用工程的方法模拟现实社会,将工程与社会生活实际的哲理应用于软件项目设计、算法实现上7环境和可持续发展项目的设计要利用软件的特性,在可复用性上,实现软件的可持续发展8职业规范遵守从事软件行业职业道德规范,具有良好的职业操守。M9个人和团队具有良好的协作能力,在团队开发中发挥作用。10沟通具有良好的交流能力,应用面向对象思想和方法有效地表达思维和过程。11项目管理应用面向对象方法进行基本的代码重用和项目管理。12终身学习通过学习OD,掌握面向对象方法学的基本特点和方法及原理,在职业发展中能够自主地用方法学的基本原理持续学习新技术和新工具。M注:“课程教学要求”栏中内容为针对该课程适用专业的专业毕业要求与相关教学要求的具体描述。“关联程度”栏中字母表示二者关联程度。关联程度按高关联、中关联、低关联三档分别表示为“H”“M”或“L”。“课程教学要求”及“关联程度”中的空白栏表示该课程与所对应的专业毕业要求条目不相关。四、课程教学内容章节名称主要内容重难点关键词学时类型一绪论1.1 背景 1.2 编程简史 1.3 软件开发的方法学 1.4面向对象概念 1.5为什么需要OOA & OOD1.编程语言简史2. 软件开发的方法学3.OOA、OOD4理论讲授二面向对象程序设计语言2.1 引言 2.2 C+2.3 java2.4 C#2.5 三种主流语言的联系区别1.OOPL2.编译器3.联系区别2理论讲授三UML基础3.1 UML简介3.1.1 什么是UML 3.1.2 UML的历史3.1.3 UML与可视化建模3.2 UML的组成3.2.1 类图3.2.2 对象图3.2.3 用例图3.2.4 顺序图3.2.5 协作图3.2.6 状态图3.2.7 活动图3.2.8 构件图3.2.9 部署图3.2.10 组成结构图3.2.11 交互纵览图3.2.13 计时图3.2.13 包图3.3 UML的通用机制3.3.1 注释3.3.2 关键字和构造型1.UML2.类图、用例图3.顺序图、状态图、活动图4.包图、部署图、构件图4理论讲授四封装4.1 引言 4.2 封装的粒度 4.3 方法和属性的封装 4.4 更大粒度的封装 4.5 封装的原则 4.6 类定义的内容 4.7 共享数据和共享操作 4.8 类型 4.9 术语 4.10重用代码1.封装2.封装的原则3.封装的粒度4共享数据与操作3理论讲授五继承5.1 引言 5.2 设计类层次结构 5.3 给类层次结构添加实现代码5.4 抽象类 5.5 重定义方法 5.6 实现栈类 5.6.1 使用继承实现栈 5.6.2 使用复合实现栈 5.6.3 继承和复合 5.7 多重继承 5.8 使用继承的原则1. 继承2.继承使用的原则3、聚合与复合4、关联5、抽象类与接口3理论讲授六多态6.1 引言 6.2 动态和静态类型系统 6.3 多态性 6.4 动态绑定 6.5 多态性规则 6.6 类型转换 6.7 显式类型转换 6.8 使用模板进行泛化1.多态2.动态绑定3.多态变量与多态消息4.模板、泛化2理论讲授七面向对象的方法学7.1 面向对象的方法学 7.2 UML、RUP和XP 7.3 开发工具的需求 7.4 Ripple概述 7.5 RUP概述 7.6 敏捷方法学 7.7 XP 概述 1.面向对象方法学2.Ripple3.Rup4. 敏捷方法学5.XP2理论讲授八对象分析8.1 对象和类 8.2 表示法 8.3 研究问题域和用户需求 8.4 发现对象 8.5 对象分类 1. 发现对象2. 问题域和用户需求3. 对象分类2理论讲授九对象设计9.1 对象的属性和操作 9.2 表示法 9.3 定义属性 9.4 定义操作 9.5 建立类图的特征层(设计级别)9.6 接口的概念及其用途 1. 属性2. 操作3. 接口2理论讲授十系统对象间的关系分析10.1 关联关系10.2 关联关系实现代码表示10.3 一般-特殊结构及其实现代码表示10.4 继承实现代码表示10.5 整体-部分结构10.6 聚合、组合实现代码表示10.7 消息 10.8 关于依赖关系的讨论1关联关系2. 一般-特殊结构3. 整体-部分结构4.消息2理论讲授十一设计模式OOAD11.1 引言 11.1.1 模式简史 11.1.2 目前的软件模式 11.2 面向对象设计原则 11.3 常见的设计模式 11.3.1 观察器模式 11.3.2 单一模式 11.3.3 迭代器模式 11.3.4 工厂方法和抽象工厂 11.3.6 状态模式 11.3.7 桥接模式 11.3.8 适配器模式 11.4 使用模式的技巧1. 设计模式2. 面向对象设计原则3.工厂模式等6理论讲授一astah UML工具的使用及使用eclipse进行java实例开发1、掌握用Rational与astah的安装 2、使用Rational与astah绘制各种UML图。3、掌握JDK的安装与环境变量的设置。4、掌握eclipse插件的安装方法和操作;1.UML2.Rational3. astah4上机实验二简单工厂模式与工厂模式对比设计1、掌握简单工厂模式的设计2、工厂模式设计3、两者的区别与联系;4、实例分析与设计1. 简单工厂模式2. 工厂模式4上机实验三使用UML对IChart实例分析设计1、掌握面向对象的软件开发方法。2、掌握XP或Ripple方法中各种制品的制作方法与步骤。3、掌握eclipse的编译与调式和编写代码的技巧。4、掌握软件项目的面向对象分析方法1.OOAD开发方法2.XP3.系统分析4上机实验(综合型)五、考核要求及成绩评定序号成绩类别考核方式考核要求权重(%)备注1期末成绩期末考试笔试闭卷100%百分制,60分及格2平时成绩平时表现上课上机出勤缺勤3次则无法获得学分3作业3次检查重点内容的掌握情况:多态、继承、封装、类型转换。4实验报告3次检查三个实验项目的完成及相关知识的掌握情况5期中考试笔试闭卷考试题型与期末考试相同注:此表中内容为该课程的全部考核方式及其相关信息。六、学生学习建议(1) 学习方法建议本课程在教学实践中需要同时注重面向对象的基本概念、语法规则、设计方法和工具环境的理解和应用。学生在学习过程中需要注意下列3个方面的结合:1理论与实践相结合。准确理解面向对象方法的基本概念和面向对象的设计原则,并勤于在面向对象vc+或eclipse环境中编程实践以求熟练应用。2理论与实践相结合。结合具体软件项目的面向对象分析方法和设计从而对软件项目面向对象设计的原理进行理解。3实例与项目相结合。结合课堂教学的基本概念、原理与实验课讲授的计算器设计、工资打印程序设计、即时聊天软件的设计等应用,能够举一反三,达到对设计模式的高度融合理解和应用。本课程上机实验建议采用Visual C+ 2005(或不低于该版本)或eclipse或netbeans或visual studio 2010作为实验环境。(语言不限,可用C+、C#、java)(2) 学生课外阅读参考资料1 Stanley B. Lippman, Jose Lajoie Barbara E. Moo著李师贤等译 C+ Primer中文版, 第4版 北京: 人民邮电出版社, 2006.32 Paul Deitel, Harvey Deitel C+ How to Program, Seventh EditionPearson Education Inc., 20103 Bruce Eckel, Chuck Allison著, 刁成嘉等译 C+编程思想, 第1卷:标准C+引导 北京: 机械工业出版社, 2006.14 Bjarne Stroustrup The C+ Programming Lang

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论