资源描述
《面向对象程序设计》课程教学大纲
课程代码:
课程英文名称:Object Oriented Programming
课程总学时:56 讲课:48 实验:8 上机:0
合用专业:通信工程
大纲编写(修订)时间:2023.7
一、大纲使用说明
(一)课程的地位及教学目的
本课程是信息科学与工程学院通信工程专业重要的专业基础课,它较具体地阐述了面向对象系统的基本理论与面向对象程序设计语言的基本知识。通过本课程的学习,使学生了解和掌握使用面向对象程序设计语言编程的基本理论和方法,是学生进一步学习通信工程专业课程的必备基础。为本专业学生在此后从事IT行业的编程、管理、技术协作等提供必要的知识。同时还承担着素质教育和工程教育的基本职责。
(二)知识、能力及技能方面的基本规定
规定学生可以理解面向对象系统如何可以更好地完毕对现实世界中的问题进行模拟与求解,如何可以将现实世界中问题的求解映射到基于面向对象软件系统的计算机求解,并可以纯熟掌握一门面向对象程序设计语言。面向对象程序设计语言应选择C++语言,应侧重讲解语言的基础知识,在语言应用上可以结合比较流行的商用编译器进行讲解,例如可以选择微软公司的VISUAL C++作为集成开发环境。
该课程的知识系统结构应围绕建设一个实际的面向对象应用程序所涉及的技术要点和技术难点的理解与掌握来展开。知识的应用结构是由课堂讨论、习题、实践环节三大部分组成。为此在知识方面应提供建造实际的面向对象应用程序所必须具有的基础知识及相关的理论知识及基本技能。能力方面一方面要有自学能力,在自学的基础上,由课堂讨论、习题、及实践环节增强分析能力及解决问题的能力。应能掌握基本的应用软件编程。
(三)实行说明
本课程对学生的动手能力规定较强,应配置相应的课程设计。使学生在编程的训练中,真正掌握面向对象程序设计的实现方法,进一步理解面向对象系统的理论,并能将面向对象程序设计思想应用到问题的求解过程中。教师在讲解过程中应进一步浅出、循序渐进、联系实际、结合实例,才干收到较好的效果。应培养学生良好的面向对象程序设计思想、方法与技巧,强化程序抽象能力与数据抽象能力。
要提高学生的基本素质,必须逼迫学生从被动吸取知识的状态下,转化到积极索取知识的状态中来。运用“先自学后讨论”的方法教学,可以清楚地掌握所教班级的整体水平。这时再采用能激发学习爱好的措施,即可提高学生班级的整体水平。注重方法的传授而不纠缠细节,这样就可以将学生的注意力引导到教学的主题上来。在明确学习的目的后,教给了方法学生就会有爱好,有能力去索取自己所需要的知识,若留有充足的自我索取的时间,就能充足地调动学生的内在潜力。理论授课最佳采用多媒体教学方式,上课过程中除了讲清基本理论和基本方法外,还应当在课堂上通过多媒体手段现场演示程序的执行及编译器的使用。 督促并采用一定的方法使学生在课外时间进行大量的编程练习,编程实践永远是学好计算机程序设计语言的关键。
该大纲的实行过程中,应站在培养人才的整体高度上,教师传授的不仅仅是知识,更重要的是如何获取知识。因此,在整个课程的教学过程中,教师应成为学生的导师,指导学生如何学习;还应充当课堂讨论的组织者及引导者;扮演实践环节中应用软件项目开发的负责人。
(四)对先修课的规定
其先修课程有:《C语言程序设计C》。
(五)对习题课、实验环节的规定
本课程的习题和实验应当结合在一起进行,学习面向对象程序设计必须多上机实践。只有多动手,才干掌握真正的程序设计方法,提高编程与软件开发能力。因此,建议除教学计划安排的西提与实验教学外,教师应当多采用课外实验作为补充,具体实验的多少应根据具体情况灵活运用。本大纲是以实行素质教育为目的制订的,所以对不同专业、不同班级在同一总学时下,执行过程中应有差异。教师要根据具体情况灵活掌握。
(六)课程考核方式
1.考核方式:考试。
2.考核目的:考核学生对面向对象程序设计封装性、继承性和多态性基本知识掌握能力;考核包含类、继承和多态程序的分析与编写能力。
3.成绩构成:期末考试(70%);平时考核(20%)(涉及中期考试、作业、小测验、提问等);上机实验成绩(10%)。
(七)重要参考书目
《C++语言基础教程(第2版)》,吕凤翥编,清华大学出版社,2023
《C++程序设计教程》,钱能编,清华大学出版社,2023
《面向对象的程序设计语言——C++》,陈志泊等编,人民邮电出版社,2023
《Visual C++程序设计教程》,黄维通等编,机械工业出版社,2023
《C++语言程序设计(第3版)》,郑莉等编,清华大学出版社,2023
《C++程序设计》,谭浩强等编,清华大学出版社,2023
二、中文摘要
本课程是信息科学与工程学院通信工程专业必修的专业基础课,以C++语言为依托,阐述面向对象系统封装性、继承性和多态性的基本理论,讲授涉及类、对象、继承、多态、友元、重载、模板、I/O流、异常解决、命名空间以及Windows程序设计等面向对象程序设计的基本知识。通过本课程的学习,使学生了解和掌握使用面向对象程序设计语言编程的基本理论和方法,是学生进一步学习通信工程专业课程的必备基础,同时也为学生从事IT行业的编程、管理、技术协作等提供必要的知识。
三、课程学时分派表
序号
教学内容
学时
讲课
实验
上机
1
面向对象技术的理论及C++语言对C语言的非本质改善
6
6
1.1
面向对象的基本概念
2
1.2
C++语言对C语言的非本质改善
2
1.3
Visual C++语言编译器的使用(课外)
2
2
基于C++的面向对象程序设计
42
36
6
2.1
类与对象的定义
2
2.2
构造函数与析构函数
2
2.3
类与对象的使用
2
2
2.4
类的静态成员与友元
2
2.5
运算符重载
2
2.6
继承与派生
2
2
2.7
虚函数与多态
2
2
2.8
类模板与函数模板
2
2.9
容器,迭代器,算法
2
2.10
I/O流类及其操作
2
2.11
异常解决
2
2.12
命名空间
2
3
基于VC++的Windows程序设计
8
6
2
3.1
基于对话框与常用控件的程序设计
3
3.2
基于文档与视图的程序设计
3
合计
56
48
8
四、教学内容及基本规定
第1部分 面向对象技术的理论及C++语言对C语言的非本质改善
总学时(单位:学时):6,讲课:6,实验:0,上机:0
具体内容:
1)面向对象的基本概念,涉及类、对象、属性、方法、消息、OOP、封装、继承、多态等。
2)C++语言对C语言的非本质改善,涉及:注释、数据的输入输出、内联函数、函数重载、默认参数、引用、const常量、函数原型、结构体等。
3)初步学会Microsoft Visual C++语言编译器的使用。
重点:
1)掌握面向对象的基本概念。
2)掌握C++面向过程的扩充特性。
难点:
深刻理解面向对象的基本概念和特性。
习题:
内联函数、函数重载、默认参数和引用等程序的分析与设计。
上机:
课外进行内联函数、函数重载、默认参数和引用等程序编写与调试。
第2部分 基于C++的面向对象程序设计
总学时(单位:学时):42,讲课:36,实验:6,上机:0
具体内容:
1)类与对象的定义,涉及:成员的访问特性(private,protected,public),类数据成员定义,成员函数定义,对象的定义和使用。
2)构造函数与析构函数,涉及:一般构造函数,默认构造函数,拷贝构造函数,析构函数,对象的构造与析构顺序。
3)类与对象的使用,涉及:对象指针,对象引用,对象数组,常数据成员,常成员函数,堆对象,子对象,类型转换。
4)类的静态成员与友元,涉及:静态数据成员,静态成员函数,友元函数,友元类。
5)运算符重载,运算符重载成员函数,运算符重载友元函数。
6)继承与派生,涉及:基类和派生类,单继承,多继承,虚基类。
7)虚函数与多态,涉及:静态联编与动态联编,虚函数,纯虚函数与抽象类,虚析构函数。
8)模板,涉及:类模板与函数模板
9)C++标准模板库,涉及:容器,迭代器,算法。
10)I/O流类及其操作,涉及:标准输入输出流,格式化输入输出,文献流,字符串流。
11)异常解决,涉及:检查异常(try),抛出异常(throw),捕获异常(catch)。
12)命名空间
重点:
1)类与对象的定义与使用
2)继承与派生
3)虚函数与多态
难点:
通过学习C++语言的语法与语义重点掌握C++语言如何实现面向对象系统的封装、继承和多态的特性。
习题:
1)构造函数与析构函数
2)类与对象的使用
3)类的静态成员与友元
4)运算符重载
5)继承与派生
6)虚函数与多态
7)模板
8)I/O流
上机:
1)类与对象(2学时)
2)继承与派生(2学时)
3)虚函数与多态(2学时)
第3部分 基于VC++的Windows程序设计
总学时(单位:学时):8,讲课:6,实验:2,上机:0
具体内容:
学习Windows基于消息驱动的编程模式,掌握Microsoft Visual C++编译器的使用,编写Windows界面风格的程序。涉及:基于对话框与常用控件的程序设计,基于菜单、工具栏、状态栏的程序设计,基于文档与视图的程序设计。
重点:
1)基于对话框与常用控件的程序设计
2)基于文档与视图的程序设计。
难点:
Windows程序的消息驱动原理、MFC类的层次结构和成员函数。
习题:
1)基于对话框与常用控件的程序设计
2)基于文档与视图的程序设计
上机:
基于对话框与常用控件的程序设计(2学时)
编写人:黄迎春
任世卿
穆欣侃
审核人:
批准人:
展开阅读全文