文档介绍:C++面向对象的程序设计
教员:周龙龙
电话:63534642
邮箱:zllkyo@
课程简介
1、课程简介:
本课程主要介绍面向对象程序设计的方法和C++语言的基本概念。以C++语言中的面向对象机制为主。学习者在学习过程中可以通过大量的程序实例和相关练习, 逐步掌握C++的面向过程和面向对象的功能,从而掌握面向对象程序设计的基本知识和基本技能。
2、课程要求:
要求学生能利用Microsoft Visual C++ 。
3、前序课程:
计算机文化基础 C语言
课程简介
4、本课程特点:
入门阶段:新名词、新概念较多,感觉比较抽象、枯燥。
入门之后:自己能够完成一些程序,很感兴趣,解决一些实际问题。
课程特点:需要大量的上机实践,应记住一些典型的程序算法。
第一章程序设计基础
学习目标:
初步掌握程序设计的概念和基本方法;了解C++语言的特点;学会使用Visual C++集成开发环境创建并运行简单的C++项目。 ◇了解计算机语言及其发展,了解高级语言的优点。 ◇了解结构化程序设计的基本概念,初步掌握结构化程序设计方法 ◇了解面向对象程序设计的思想、基本概念。 ◇初步接触C++语言,了解C++语言的特点。 ◇熟悉Visual C++ 集成开发环境的基本使用方法,并完成一个简单的C++程序的编写、编译、调试和运行。
学习方法
本章概念和知识点较多,学硬背,要分清知识点的轻重程度。对于计算机语言的发展,只要了解其主要过程就可以了;对于程序设计方法和C++语言的特点,不能在本章范围内孤立学习,要结合下面相应的章节以及亲自上机实践才能掌握,并且这是个渐进的过程,不能一蹴而就;对于C++集成开发环境的使用则一定要通过实际的动手操作才能熟悉。
自然语言与计算机语言之间的鸿沟
机器语言机器可以直接识别并执行
面向机器
高级语言
低级语言
面向过程
面向对象
关心求解过程
着眼点:解决“什么”问题
关心一个对象能干什么
例如:FORTRAN、 BASIC
结构化分析方法和设计方法
例:C++、JAVA
面向对象的分析方法和设计方法
“编译”
“解释”
“链接”
中级语言
高级语言
双重功能例:C
机器语言、汇编语言和高级语言
汇编语言
1. 设计思路
自顶向下、功能分解、逐步求精。采用模块分解与功能抽象,自顶向下、分而治之。
把精力主要集中在对如何求解问题的算法逻辑和过程的描述上,通过程序把解决问题的步骤告诉计算机。
当一些任务十分复杂以至无法描述时,可以将它拆分为一系列较小的功能部件,直到这些自完备的子任务小到易于理解的程度。
2. 程序结构
按功能划分为若干个基本模块,形成一个树状结构。
各模块间的关系尽可能简单,功能上相对独立;每一模块内部均是由顺序、选择和循环三种基本结构组成。
其模块化实现的具体方法是使用子程序。
面向过程的程序设计
3. 缺点
可重用性差:相对于老问题的新方法带来额外的开销;
安全性差:把数据和处理数据的过程分离为相互独立的实体;
难以开发图形界面的应用;
例如,计算一个公司中每一个职员的平均工资是一项较为复杂的任务。可以将其拆分为以下的子任务: (1)计算总共有多少职员 (2)计算工资总额 (3)用职员人数去除工资总额 计算工资总额本身又可分为一系列子任务 (1)找出每个职员的档案 (2)读出工资数额 (3)把工资加到部分和上 (4)读出下个职员的档案
面向对象的程序设计
设计思想:
面向对象程序设计方法不是以函数过程和数据结构为中心,.
面向对象语言的发展过程
1、雏形阶段
60年代,挪威计算中心开发的Simula67语言,是面向对象语言发展史上的第一个里程碑。它引入了类的概念和继承的机制。具有了面向对象语言的重要特征,是面向对象语言的先驱。
72年,Smalltalk-72问世,在Smalltalk-72中,任何东西都是对象
Smalltalk-72的问世,标志着面向对象程序设计方法的正式形成。但作为语言还不完善,处于研究性和实验性阶段。