文档介绍:1 第1章结论 P1 计算机程序设计语言的发展语言是一套具有语法、词法规则的系统。计算机程序设计语言是计算机可以识别的语言, 用于描述解决问题的方法, 供计算机阅读和执行。 机器语言与汇编语言 1946 年 2 月世界上第一台数字电子计算机 ENIAC 诞生。计算机系统包括硬件和软件。软件包括了使计算机运行所需的各种程序及其有关的文档资料。程序指令指令系统程序是指令的集合。指令是计算机可以识别的命令。计算机所能识别的指令形式,只能是简单的“0”和“1”的组合。 2 一台计算机硬件系统能够识别的所有指令的集台,称为它的指令系统。由计算机硬件系统可以识别的二进制指令组成的语言称为机器语言。汇编语言将机器指令映射为一些可以被人读懂的助记符。汇编语言的翻译软件称为汇编程序。 高级语言 P2 高级语言屏蔽了机器的细节,提高了语言的抽象层次,程序中可以采用具有一定含义的数据命名和容易理解的执行语句。 面向对象的语言开发一个软件是为了解决某些问题,这些问题所涉及的业务范围称为该软件的问题域。对象类属性行为面向对象的编程语言将客观事物看作具有属性和行为( 或称服务)的对象, 通过抽象找出同一类对象的共同属性( 静态特征) 和行为( 动态特征), 形成类。继承多态通过类的继承与多态可以很方便地实现代码重用,大大缩短了软件开发周期,并使得软件风格统一。 Smalltalk 是第一个真正的面向对象的程序语言。 面向对象的方法 面向对象方法的由来 P3 面向过程的程序没计方法,早期的计算机是用于数学计算的工具, 例如,用于计算炮弹的飞行轨迹。为了完成计算, 就必须设计出一个计算方法或解决问题的过程。因此,软件设计的主要工作就是设计求解问题的过程。 20世纪 60 年代产生结构化程序设计思想。在 20世纪 70 年代到 80 年代,结构化程序设计方法成为了所有软件开发设计领域及每个程序员都采用的方法。结构化程序设计的思路是: 3 自顶向下、逐步求精; 程序结构按功能划分为若干个基本模块,这些模块形成一个树状结构; 各模块之间的关系尽可能简单,功能上相对独立; 每一模块内部由顺序、选择和循环三种基本结构组成; 模块化实现的具体方法是使用子程序。结构化程序设计方法的优点: 结构化程序设计由于采用了模块分解与功能抽象以及自顶向下、分而治之的方法,从而有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护。结构化程序设计方法的缺点: 仍是一种面向过程的程序设计方法; 把数据和处理数据的过程分离为相互独立的实体; 程序的可重用性差; 编写随时响应用户的任何操作的软件开销大。面向对象的方法: 首先,将数据及对数据的操作方法放在一起。作为一个相互依存、不可分离的整体——对象。对同类型对象抽象出其共性,形成类。类中的大多数数据,只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。面向对象的方法的优点程序模块间的关系更为简单,程序模块的独立性、数据的安全性就有了良好的保障。另外,通过继承与多态性,还可以大大提高程序的可重用性,使得软件的开发和维护都更为方便。软件开发从本质上讲, 就是对软件所要处理的问题域进行正确的认识,并把这种认识正确地描述出来。面向对象方法所强调的基本原则, 就是直接面对客观存在的事物来进行软件开发, 将人们在日常生活中习惯的思维方式和表达方式应用在软件开发中,使软 4 件开发从过分专业化的方法、规则和技巧中回到客观世界, 回到人们通常的思维方式。 面向对象的基本概念 P4 1. 对象面向对象方法中的对象,是系统中用来描述客观事物的一个实体,它是用来构成系统的一个基本单位。对象由一组属性和一组行为构成: ?属性是用来描述对象静态特征的数据项; ?行为是用来描述对象动态特征的操作序列。 : 忽略事物的非本质特征,只注意那些与当前目标有关的本质特征,从而找出事物的共性,把具有共同性质的事物划分为一类,得出一个抽象的概念。例如,石头、树木、汽车、房屋等都是人们在长期的生产和生活实践中抽象出的概念。面向对象方法中的“类”, 是具有相同属性和服务的一组对象的集合。它为属于该类的全部对象提供了抽象的描述, 其内部包括属性和行为两个主要部分。类与对象的关系犹如模具与铸件之间的关系。一个属于某类的对象称为该类的一个实例。 3. 封装封装是面向对象方法的一个重要原则,就是把对象的属性和服务结合成一个独立的系统单位,并尽可能隐蔽对象的内部细节。 4. 继承定义: 特殊类的对象拥有其一般类的全部属性与服务,称作特殊类对一般类的继承。 5 比如我们认识了轮船的特征之后,再考虑客轮时,因为知道客轮也