第10章面向对象方法学引论 10.1传统方法学与面向对象方法比较 102面向对象的基本任务 103,面向对象基础概念 104本章小结
第10章 面向对象方法学引论 10.1 传统方法学与面向对象方法比较 10.2 面向对象的基本任务 10.3. 面向对象基础概念 10.4 本章小结
10.1传统方法学与面向对象方法比较 10.1.1传统方法学 10.1.2面向对象方法学
10.1 传统方法学与面向对象方法比较 10.1.1 传统方法学 10.1.2 面向对象方法学
10.1.1传统方法学 1.僵化的瀑布模型 这种模型的核心是将软件生命周期划 分为软件计划、需求分析、软件设计 编码、测试和运行维护等阶段,根据不 同阶段工作的特点,运用不同的手段完 成任务
10.1.1 传统方法学 1.僵化的瀑布模型 这种模型的核心是将软件生命周期划 分为软件计划、需求分析、软件设计、 编码、测试和运行维护等阶段,根据不 同阶段工作的特点,运用不同的手段完 成任务
2.传统结构化技术的缺点 用这种技术开发出的软件,其稳定 性、可修改性和重用性都比较差
2.传统结构化技术的缺点 用这种技术开发出的软件,其稳定 性、可修改性和重用性都比较差
10.1.2面向对象方法学 1.为什么需要面向对象 面向对象=对象+类+继承+消息
10.1.2 面向对象方法学 1.为什么需要面向对象 面向对象=对象+类+继承+消息
2.面向对象方法学的优点 (1)符合人们通常的思维方式 (2)高度连续性 (3)重用性好 (4)可维护性好
2.面向对象方法学的优点 (1)符合人们通常的思维方式 (2)高度连续性 (3)重用性好 (4)可维护性好
10.2面向对象的基本任务 102.1抽象 1022封装
10.2 面向对象的基本任务 10.2.1 抽象 10.2.2 封装
10.2.1抽象 1.什么是抽象 ●在抽象的最高层,使用问题环境的语言,以概 括的方式叙述问题的解法; 在抽象的较低层,采用更过程化的方法,把面 向问题的术语和面向实现的术语结合起来叙述 问题的解法; ●在抽象的最低层,可以用直接实现的方式来叙 述问题的解法
10.2.1 抽象 1.什么是抽象 ⚫ 在抽象的最高层,使用问题环境的语言,以概 括的方式叙述问题的解法; ⚫ 在抽象的较低层,采用更过程化的方法,把面 向问题的术语和面向实现的术语结合起来叙述 问题的解法; ⚫ 在抽象的最低层,可以用直接实现的方式来叙 述问题的解法;
图10-1面向对象的软件分析过程 数据 问题空间 结果 客观世界的 客观世界的 对象 对象和操作 客观世界的算法 程序员对问题的表达(抽象) 输出数据 程序设计的 计算机算法 对象和操作 解空间
解空间 计算机算法 程序员对问题的表达(抽象) 客观世界的算法 客观世界的 对象和操作 数据 结果 客观世界的 对象 程序设计的 对象和操作 输出数据 问题空间 图10-1 面向对象的软件分析过程
数据抽象最本质的一点就是把数据类型的使用与 它的实现加以分离,它使得程序设计人员能够: (1)把大的系统分解成多个小的部分,每个部分 有一个按所处理的数据而设计的接口; (2)这些接口是这个部分的说明,是外部可见的 而这个部分的具体实现则是隐蔽的、外部不可见 的 (3)所需的保护措施放在每个接口之中
数据抽象最本质的一点就是把数据类型的使用与 它的实现加以分离,它使得程序设计人员能够: (1)把大的系统分解成多个小的部分,每个部分 有一个按所处理的数据而设计的接口; (2)这些接口是这个部分的说明,是外部可见的, 而这个部分的具体实现则是隐蔽的、外部不可见 的; (3)所需的保护措施放在每个接口之中