面向对象程序设计理论教学大纲
《面向对象程序设计(C++)》理论教学大纲
- 课程名称:面向对象程序设计(Object-Oriented Programming (C++))
- 学分/总学时:2/36
- 开课单位:计算机科学与工程学院
课程的性质、目的和任务
《面向对象程序设计(C++)》是讲授面向对象程序设计的课程,选用C++做为程序语言,以Microsoft的Visual C++ 6.0做为集成开发环境。开设本课程旨在向学生传授最纯粹的面向对象程序设计概念和最先进的可视化编程技术。 本课程的内容有:
- C++语法知识,包括C++语言在面向过程方面的扩充、类与对象、构造函数和析构函数、类的静态成员、类的常成员、继承与派生、多态性和虚函数、友元、运算符重载、流类库的输入/输出、异常处理等;
- Windows程序机制和MFC编程:消息循环和事件驱动,API,MFC,消息映像、常用类和控件、应用程序体系结构;
- 简单的应用编程:数据库编程、Internet编程、DLL编写。
本大纲不包括C语言的内容,要求学生已修过《C语言程序设计》。 本课程有理论课36学时,上机36学时,另外需要安排课外实践20-36学时(在另一门课《C++课程设计》中)。 通过本课程的学习,要求学生达到:
- 掌握C++的主要语法,能读懂C++编制的程序,能编写简单的C++程序;在掌握C++语言的同时,能够对现实世界中较简单的问题及其解决方法用计算机语言进行描述。深刻理解面向对象程序设计思想和Windows应用程序机制,彻底从面向过程的C程序设计中脱胎换骨;
- 对MFC库,常用的会使用,一般的在借助于工具书和其它文档时会使用;掌握4种应用程序体系结构:CWinApp/CWnd、基于对话框、SDI、MDI;
- 了解一些DLL、数据库、网络等编程技术。
学习本课程学生应掌握的前设课程知识
本课程的先行课程有:《C语言程序设计》、《计算机原理》。
学时分配
课程授课时间为72学时,其中讲课36学时,实验36学时
| 章节 | 理论 | 实验 | 合计 |
|---|---|---|---|
| 第1章 | 1 | 0 | 1 |
| 第2章 | 1 | 2 | 3 |
| 第3章 | 2 | 2 | 4 |
| 第4章 | 4 | 2 | 6 |
| 第5章 | 2 | 2 | 4 |
| 第6章 | 2 | 2 | 4 |
| 第7章 | 4 | 2 | 6 |
| 第8章 | 4 | 4 | 8 |
| 第9章 | 2 | 4 | 6 |
| 第10章 | 2 | 4 | 6 |
| 第11章 | 2 | 4 | 6 |
| 第12章 | 2 | 4 | 6 |
| 第13章 | 8 | 4 | 12 |
| 合计 | 36 | 36 | 72 |
课程内容和基本要求
- 概述(1学时)
- 计算机程序设计语言的发展
- 面向对象的方法
- 面向对象的软件开发
- C++简单程序设计(3学时)
- C++语言概述
- 基本数据类型和表达式
- 数据的输入与输出
- 函数(4学时)
- 函数的定义与使用
- 内联函数
- 带默认形参值的函数
- 函数重载
- 函数模板
- 类与对象(6学时)
- 面向对象的思想
- 面向对象程序设计的基本特点
- 类和对象
- 构造函数和析构函数
- 类的组合
- 类模板
- 面向对象标记
- C++程序的结构(4学时)
- 作用域与可见性
- 生存期
- 数据与函数
- 静态成员
- 友元
- 共享数据的保护
- 数组、指针与字符串(4学时)
- 数组
- 指针
- 动态内存分配
- 字符串
- 继承与派生(6学时)
- 继承与派生
- 访问控制
- 派生类的构造和析构函数
- 派生类成员的标识与访问
- 赋值兼容规则
- 多态性(8学时)
- 多态性概述
- 运算符重载
- 虚函数
- 抽象类
- 群体类(6学时)
- 线性群体
- C++标准库中的容器类
- 群体数据的组织(6学时)
- 插入排序
- 选择排序
- 交换排序
- 顺序查找
- 折半查找
- 标准C++库中的算法
- 流类库与输入/输出(6学时)
- I/O流的概念
- 输出流
- 输入流
- 输入/输出流
- 异常处理(6学时)
- 异常处理的基本思想
- C++异常处理的实现
- 异常处理中的构造与析构
- MFC库与Windows程序开发概述(12学时)
- Windows的编程模式
- MFC简介
- 使用Visual C++开发Windows程序的步骤
教材及学生参考书
教材:
- 《C++语言程序设计》 郑莉、董渊编著.清华大学出版社 2001
参考书和网站:
- 《面向对象程序设计》 刘振安主编.经济科学出版社
- 《Visual C++ 6.0实例教程》 门槛创作室.电子工业出版社
- 《Visual C++简明教程》 邓力编著.海洋出版社
- 《Visual C++ 6.0编程实例·技巧》 李国徽等编著.华中理工大学出版社
- 《深入浅出MFC》 俊杰著.电子版
- http://www.ccw.com.cn ── E海航标
- http://www.vcfan.com ── 程序家园
- http://msdn.microsoft.com ── MSDN在线帮助
课外学习要求
为了培养学生主动学习能力,综合分析和解决问题的能力,要求学生在课外阅读参考书目,并要有相当多的动手实践,培养类的设计与修改能力,学会MFC类库的使用和借鉴;彻底掌握VC调试、帮助、出错信息处理、MFC源代码查阅等实践能力。
考核方式及成绩评定方法
期末采用闭卷考试形式。 总评成绩:作业、平时考勤及学习态度(含实验)占 30% ;期末闭卷考试占 70%。
其它说明
C++语言的集成开发环境一般选用Microsoft的Visual C++ 6.0,但也可以选Visual C++ .Net。甚至在前面的纯语法部分选Turbo C++,都是可以的。