安徽师范大学自动化本科专业《面向对象技术》课程大纲本科教学大纲
理论类课程大纲 课程名称:面向对象技术 一、课程概况 所属专业: 自动化 开课单位: 物理与电子信息学院 课程类型: 专业方向课程 课程代码: 0845590 开课学期: 4 学分: 2 学时: 30 核心课程: 否 拟使用教材: Bjarne Stroustrup.《C++程序设计语言》.机械工业出版社.2013 国内(外)现有教材: Bjarne Stroustrup.《C++程序设计语言》.机械工业出版社.2013 学习参考资料 1. Grady Booch.《面向对象分析与设计》.电子工业出版社.2016 二、课程描述(300 字以内) 面向对象技术是当前软件产业的主流技术,几乎渗透到软件开发的每一角 落,有效地掌握面向对象技术与方法是软件产业对每一位软件从业人员的基本要 求。面向对象软件开发方法以其封装、信息隐藏、数据抽象、继承、多态性、异 常处理、断言机制等特性大大提高了软件产品的可靠性、可重用性和可扩展性, 越来越受到各高校工科专业的关注。课程的主要内容包括类、运算符重载、类的 继承与派生、模板、异常处理以及标准库等。 三、课程目标 通过本课程的教学,要求学生能够掌握面向对象程序设计的基本概念和原 理,牢固掌握面向对象软件开发方法的封装、信息隐藏、数据抽象、继承、多态 性、异常处理等基本特性,并能主动将这些特性运用在实际软件开发中;学习使 用 c++语言进行面向对象的程序设计,初步掌握面向对象编程环境 visual c++的使 用,为大型应用软件设计与开发打下良好的理论和实践基础。 四、教学要求 授课教师将按照学校本科教学工作有关要求做好课程教学各项工作,严格按 照课表规定的时间、地点上课,不迟到、不早退,将根据本大纲要求,认真备课 完成教案与讲稿编写等各项课前准备工作;授课过程力求内容充实、概念准确、 思路清晰、详略得当、逻辑性强、重难点突出,力戒平铺直叙、照本宣科,同时 重视对学生的学习方法指导和课堂教学效果信息的反馈,实现教与学的双向互 动;同时将结合课程目标要求,做好考核内容设计,并严格按照本大纲要求做好 出勤率统计、作业评价等各项工作。 学习是大学生自己的责任和义务,学生应根据课程大纲要求制定本门课程学 习计划,加强学业管理,严格自我要求,提升自主学习能力,主动适应课程学习 要求。参与课堂教学活动不迟到、不早退,无正当理由不请假,上课认真听讲, 不做任何与课堂教学无关事宜,不使用手机,积极与授课教师进行教学互动,同 时利用课余时间做好预习、复习、课外书籍阅读等工作,主动与同学开展合作学 习,认真完成任课教师布置的课程作业。 五、考核方式及要求 为实现课程教学目标,本门课程考核方式及要求为:出勤率及课程作业占 10%,点到不少于 3 次,其中缺席 1 次,按无成绩计算;随堂测验 1 次,测验成 绩按 10%折算后计入总成绩;实验成绩按 20%折算后计入总成绩;期末考试为 卷面考试,占总成绩的 60%。 六、课程内容 第一章:概述 (授课时间:第四学期第 1 周) 教学目标:使学生掌握面向对象技术的基本概念、C++语言的运行环境以及上机 运行方法。 教学重点:类的概念,面向对象的程序设计特点。 教学难点:类的封装、继承及多态;类的使用方式。 学 时:课堂教学 2 学时,课外自主学习时间不少于 2 学时 教学方法:讲授法、演示法 主要内容: (1) 数据类型与变量 (2) 流程控制 一、 条件语句 二、循环语句 (3) 函数 (4) 数组与字符串 (5) 面向对象的基本概念 (6) C++程序例子 学习方法:小组讨论、实验操作 课后作业: 1. 什么是面向过程的程序设计语言?什么是面向对象的程序设计语言? 第二章:C++语言基础 (授课时间:第四学期第 2 周) 教学目标:使学生掌握 C++语言中指针和引用的概念,以及动态内存分配的使用。 教学重点:指针及引用的定义和使用。 教学难点:指针的灵活应用。 学 时:课堂教学 2 学时,课外自主学习时间不少于 2 学时 教学方法:讲授法、演示法 主要内容: (1) C++语言的指针 (2) 引用 一、 变量的引用 二、函数参数的引用 三、函数返回的引用 (3) 用于常量的指针和引用 (4) 动态内存分配 一、 动态数组 二、数组作为函数参数 三、返回数组 学习方法:小组讨论、实验操作 课后作业: 1.C++中的指针同 C 中指针有什么区别? 第三章:类与对象 (授课时间:第四学期第 3,4 周) 教学目标:通过本章教学,使学生了解类的概念,掌握类的创建与使用,并初步 掌握构造函数和析构函数的编写。 教学重点:类概念的理解和类的创建。 教学难点:类的成员函数;构造函数和析构函数。 学 时:课堂教学 4 学时,课外自主学习时间不少于 4 学时 教学方法:讲授法、演示法 主要内容: 1) 面向过程与面向对象编程 2) C++结构体与 C 结构体 3) 类 一、类成员访问 二、类成员函数 三、动态分配类对象 4) 构造函数与析构函数 学习方法:小组讨论、实验操作 第四章:类的组合 (授课时间:第四学期第 5,6 周) 教学目标:通过本章教学,使学生了解类的组合的概念,理解类组合方式的适用 场景。 教学重点:类组合的理解。 教学难点:对象与指针;类的组合。 学 时:课堂教学 4 学时,课外自主学习时间不少于 4 学时 教学方法:讲授法、演示法 主要内容: 1) 对象与指针 一、用于对象的动态内存 二、方法和成员指针 三、this 指针 2) 不同类型的成员数据和成员方法 3) 类的高级组合 4) 友元函数和类 学习方法:小组讨论、实验操作 第五章:友元及运算符重载 (授课时间:第四学期第 7,8 周) 教学目标:通过本章教学,使学生了解友元的概念,掌握 C++语言中各种运算符 重载的实现方法及其特点。 教学重点:运算符重载,友元函数。 教学难点:友元函数的适用;运算符重载的实现。 学 时:课堂教学 4 学时,课外自主学习时间不少于 4 学时 教学方法:讲授法、演示法 主要内容: 1) 运算符重载基础 2) 友元函数和自动类型转换 一、友元函数和友元类 二、自动类型转换的构造函数 3) 引用和运算符重载高级技术 学习方法:小组讨论、实验操作 第六章:输入输出流 (授课时间:第四学期第 9 周) 教学目标:通过本章教学,使学生掌握流的基本概念,熟练掌握标准输入输出流 的使用,初步掌握文件输入输出流的应用。 教学重点:输入输出流。 教学难点:输入输出流的使用;文件输入输出流。 学 时:课堂教学 2 学时,课外自主学习时间不少于 2 学时 教学方法:讲授法、演示法 主要内容: 1) 输入输出流 一、 输入输出流的概念 二、成员函数 2) 文件流 一、文件流的成员函数 二、二进制文件的访问 3) 字符流 学习方法:小组讨论、实验操作 第七章:类的继承与派生 (授课时间:第四学期第 10,11 周) 教学目标:通过本章教学,使学生了解继承的概念,掌握公有继承的方法和特点, 掌握派生类的构造和析构函数编写方法。 教学重点:公有继承、私有继承和保护继承的区别。 教学难点:派生类构造函数和析构函数的编写方法和调用顺序。 学 时:课堂教学 4 学时,课外自主学习时间不少于 4 学时 教学方法:讲授法、演示法 主要内容: 1) 继承和派生的概念 2) 公有继承 3) 派生类的构造和析构函数 4) 赋值操作符和拷贝构造函数 学习方法:小组讨论、实验操作 第八章:多重继承与虚基类 (授课时间:第四学期第 12 周) 教学目标:通过本章教学,使学生掌握多重继承的基本概念,了解多重继承的优 缺点,掌握虚基类的用法。 教学重点:多重继承的概念;虚基类的概念。 教学难点:多重继承中构造函数和析构函数的编写及调用顺序。 学 时:课堂教学 2 学时,课外自主学习时间不少于 2 学时 教学方法:讲授法、演示法 主要内容: 1) 多重继承的概念 一、多重继承的缺点 二、构造和析构函数的调用顺序 2) 多重继承中的混淆 一、调用基类中同名成员 二、共同基类中的成员 3) 相同名字成员的重载 一、初始化和调用顺序 学习方法:小组讨论、实验操作 第九章:多态 (授课时间:第四学期第 13 周) 教学目标:通过本章教学,使学生掌握结多态的概念,并了解虚函数和抽象基类 的概念,初步掌握虚函数的使用方法。 教学重点:多态的概念;抽象基类与虚函数。 教学难点:多态的概念;利用虚函数实现多态。 学 时:课堂教学 2 学时,课外自主学习时间不少于 2 学时 教学方法:讲授法、演示法 主要内容: 1) 多态的概念 一、静态和动态绑定的区别 二、运行时多态及虚函数 2) 抽象基类 3) 虚析构函数 4) 多态的应用 学习方法:小组讨论、实验操作 第十章:模板 (授课时间:第四学期第 14 周) 教学目标:通过本章教学,使学生掌握函数模板和类模板的概念,初步掌握类模 板的应用。 教学重点:函数模板;类模板。 教学难点:函数模板和类模板的编写及应用。 学 时:课堂教学 2 学时,课外自主学习时间不少于 2 学时 教学方法:讲授法、演示法 主要内容: 1) 函数模板 一、函数模板的创建 二、多参数函数模板 三、函数模板的重载 四、多种数据类型的函数模板创建 五、多个通用类型的函数模 板创建 2) 类模板 一、类模板的用途 二、类模板的创建 三、容器类 四、创建一 个数组模板类 学习方法:小组讨论、实验操作 第十一章:标准模板库 (授课时间:第四学期第 15 周) 教学目标:通过本章教学,使学生了解基本的数据结构,初步掌握标准模板库的 应用。 教学重点:标准模板库;基本的数据结构。 教学难点:标准模板库的应用,STL 编程。 学 时:课堂教学 2 学时,课外自主学习时间不少于 2 学时 教学方法:讲授法、演示法 主要内容: 1) 基本数据结构 一、链表与数组 二、栈与队列 三、树 2) 标准模板库 一、迭代器 二、容器 三、通用算法 学习方法:小组讨论、实验操作
上一篇文章: 安徽师范大学自动化本科专业《面向对象技术》实验课程大纲本科教学大纲 下一篇文章: 安徽师范大学自动化本科专业《计算机应用技术》实验课程大纲本科教学大纲 |