面向对象技术 面向对象的概念 面向对象的开发过程 面向对象分析与模型化 面向对象设计 面向对象程序的实现与测试
面向对象的概念 a开发模式 什么是面向对象 a对象 a继承
开发模式( Paradigm) a开发模式又称为范型、范例、风范 或模式( Pattern)。开发模式定义了 ◆特定问题和应用的开发过程中将 遵循的步骤; ◆确定将用于表示问题和解的那些 成分的类型; ◆利用这些成分表示与问题解决有 关的抽象; ◆直接得到问题的结构
口开发模式的选择影响到整个软件开 发生存期。就是说,它支配了 ◆设计方法 ◆编码语言 ◆测试和检验技术 的选择
面向过程开发模式 a面向过程开发模式产生过程的抽象。 a这些抽象的基础是把软件视为处理流, 并定义成由一系列步骤构成的算法。 a每一步骤都是带有预定输入和特定输 出的一个过程,把这些步骤串联在 起可产生合理的稳定的贯通于整个程 序的控制流,最终产生一个简单的具 有静态结构的体系结构
面向过程开发模式的特点 a过程性开发模式侧重建立构成问题解 决的处理流。 a数据抽象、数据结构根据算法步骤的 要求开发,它贯穿于过程,提供过程 所要求操作的信息。 系统的状态是一组全局变量,这组全 局变量保存状态的值,把它们从一个 过程传送到另一个过程
过程性系统 初始化读入 计算 写出 结束 (a)系统结构基于要执行的任务,改变一个可能需要改变其它所有的 面向对象的系统 (b)系统结构基于对象间的交互,改变一个通常只具有局部影响
事件处理循环 case mouse create 初始化系统建立和显示 和全局变量「界面 keypress- quit 系统 停工 expose refresh (1) Initialize system; (2)Create and draw interfaces while quit not selected de case
Mouse event: create shape structure read mouse movements for data; store newly created shape on list of Shape records Keypress event: if key =q then exit loops else ignore; Ecpose event: refresh display by drawing each shape structure (4)Shut down system;
面向对象开发模式 a在面向过程开发模式中优先考虑的 是过程抽象,在面向对象开发模式 中优先考虑的是实体(问题论域的 对象)。 a在面向对象开发模式中,把标识和 模型化间题论域中的主要实体做为 系统开发的起点,主要考虑对象的 行为而不是必须执行的一系列动作