C++语言程序设计 绪论 清华大学郑莉
第一章 绪论 清华大学 郑 莉 C++语言程序设计
C++语言程序设计 清华大学郑莉 本章主要内率 计算机程序设计语言的发展 面向对象的方法 ●面向对象的软件开发 信息的表示与存储 程序的开发过程
C++语言程序设计 清华大学 郑莉 2 本章主要内容 ⚫ 计算机程序设计语言的发展 ⚫ 面向对象的方法 ⚫ 面向对象的软件开发 ⚫ 信息的表示与存储 ⚫ 程序的开发过程
C++语言程序设计 清华大学郑莉 计算机程序 计 算机语言的发展 ●计算机的工作是用程序来控制的 程序是指令的集合 指令是计算机可以识别的命令 3
C++语言程序设计 清华大学 郑莉 3 计算机程序 ⚫ 计算机的工作是用程序来控制的 ⚫ 程序是指令的集合。 ⚫ 指令是计算机可以识别的命令。 计 算 机 语 言 的 发 展
C++语言程序设计 清华大学郑莉 机器语言与汇编语言 计 算。由计算机硬件系统可以识别的二进制指 机 令组成的语言称为机器语言。 语言 计算机发展的初期,软件工程师们只能用机器 语言来编写程序。这一阶段,在人类的自然语言和 的计算机编程语言之间存在着巨大的鸿沟 发●汇编语言将机器指令映射为一些可以被 展人读懂的助记符,如ADD、SUB等 此时编程语言与人类自然语言间的鸿沟略有缩 小,但仍与人类的思维相差甚远。因为它的抽象 次太低,程序员需要考虑大量的机器细节
C++语言程序设计 清华大学 郑莉 4 机器语言与汇编语言 ⚫ 由计算机硬件系统可以识别的二进制指 令组成的语言称为机器语言。 计算机发展的初期,软件工程师们只能用机器 语言来编写程序。这一阶段,在人类的自然语言和 计算机编程语言之间存在着巨大的鸿沟。 ⚫ 汇编语言将机器指令映射为一些可以被 人读懂的助记符,如ADD、SUB等。 此时编程语言与人类自然语言间的鸿沟略有缩 小,但仍与人类的思维相差甚远。因为它的抽象层 次太低,程序员需要考虑大量的机器细节。 计 算 机 语 言 的 发 展
C++语言程序设计 清华大学郑莉 高级语言 计 机 高级语言屏蔽了机器的细节,提高了 语 言语言的抽象层次,程序中可以采用具有 的一定涵义的数据命名和容易理解的执行 展话句。这使得在书写程序时可以联系到 程序所描述的具体事物
C++语言程序设计 清华大学 郑莉 5 高级语言 高级语言屏蔽了机器的细节,提高了 语言的抽象层次,程序中可以采用具有 一定涵义的数据命名和容易理解的执行 语句。这使得在书写程序时可以联系到 程序所描述的具体事物。 计 算 机 语 言 的 发 展
C++语言程序设计 清华大学郑莉 计 面向对家的语言 机●出发点: 语 更直接地描述客观世界中存在的事物 (对象)以及它们之间的关系 特点: 的 是高级语言 发 将客观事物看作具有属性和行为的对象 展通过抽象找出同一类对象的共同属性和 行为,形成类。 通过类的继承与多态实现代码重用★
C++语言程序设计 清华大学 郑莉 6 面向对象的语言 ⚫出发点: –更直接地描述客观世界中存在的事物 (对象)以及它们之间的关系。 ⚫特点: –是高级语言。 –将客观事物看作具有属性和行为的对象。 –通过抽象找出同一类对象的共同属性和 行为,形成类。 –通过类的继承与多态实现代码重用 计 算 机 语 言 的 发 展
C++语言程序设计 清华大学郑莉 面向对家的语言 计 算机语言 优点 使程序能够比较直接地反问题域的本 的 来面目,软件开发人员能够利用人类认识 发事物所采用的一般思维方法来进行软件开 展 发
C++语言程序设计 清华大学 郑莉 7 面向对象的语言 ⚫ 优点: 使程序能够比较直接地反问题域的本 来面目,软件开发人员能够利用人类认识 事物所采用的一般思维方法来进行软件开 发。 计 算 机 语 言 的 发 展
C++语言程序设计 清华大学郑莉 程序设计方法的发展历程 面 面向过程的程序设计方法 向 象·程序的目的:用于数学计算 白 方°王要工作:设计求解问题的过程 法。缺点:对于庞大、复杂的程序难以开发 和维护 大
C++语言程序设计 清华大学 郑莉 8 程序设计方法的发展历程 ——面向过程的程序设计方法 ⚫ 程序的目的:用于数学计算 ⚫ 主要工作:设计求解问题的过程 ⚫ 缺点:对于庞大、复杂的程序难以开发 和维护 面 向 对 象 的 方 法
C++语言程序设计 清华大学郑莉 程序设计方法的发展历程 面 面向过程的结构化程序设计方法 向对象的方 ●设计思路 自顶向下、逐步求精。采用模块分解与 功能抽象,自顶向下、分而治 程序结构: 按功能划分为若干个基本模块,形成 法 个树状结构 各模块间的关系尽可能简单,功能上相 对独立;每一模块内部均是由顺序、选 择和循环三种基本结构组成。 其模块化实现的具体方法是使用子程
C++语言程序设计 清华大学 郑莉 9 程序设计方法的发展历程 ——面向过程的结构化程序设计方法 ⚫ 设计思路 – 自顶向下、逐步求精。采用模块分解与 功能抽象,自顶向下、分而治之。 ⚫ 程序结构: – 按功能划分为若干个基本模块,形成一 个树状结构。 – 各模块间的关系尽可能简单,功能上相 对独立;每一模块内部均是由顺序、选 择和循环三种基本结构组成。 – 其模块化实现的具体方法是使用子程序。 面 向 对 象 的 方 法
C++语言程序设计 清华大学郑莉 程序设计方法的发展历程 面 面向过程的结构化程序设计方法 向 对。优点 象 白 有效地将一个较复杂的程序系统设计 方任务分解成许多易于控制和处理的子任务, 法便于开发和维护
C++语言程序设计 清华大学 郑莉 10 程序设计方法的发展历程 ——面向过程的结构化程序设计方法 ⚫ 优点: 有效地将一个较复杂的程序系统设计 任务分解成许多易于控制和处理的子任务, 便于开发和维护。 面 向 对 象 的 方 法