结构化方法与面向对象方法比较_第1页
结构化方法与面向对象方法比较_第2页
结构化方法与面向对象方法比较_第3页
结构化方法与面向对象方法比较_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、文档编码 : CT2U2H5M10Q1 HB6J2J9G2U10 ZQ10I9E2N3D2结构化方法与面对对象方法的内在联系(一)二者在分解和抽象原就上一样 分解和抽象是软件开发中把握问题复杂性的重要原就;分解即化 整分零,将问题剥茧抽丝,层层消化;抽象就是通过分解表达,在逐层 分解时,上层是下层的抽象,下层是上层的具体说明和表达,运用抽象 可以不用一次考虑太多细节,而逐步的有方案有层次的明白更多细节;面对对象方法与结构化方法在运用分解和抽象原就上的要求是完全一样 的;(二)局部化和重用性设计上的一样 局部化是软件开发中的一个重要原就,即不期望软件一部分过多 地涉及或影响软件的其它部分;在结构

2、化方法中,局部化主要表达在代 码与数据的分隔化,即程序各部分除必要的信息沟通外,彼此相互隔离 而互不影响,而面对对象方法就接受数据、代码的封装,即将数据、代 码和操作方法封装成一个类似“ 黑箱” 的整体对象,提高了程序的牢靠 性和安全性,同时增强了系统的可爱护性;也就是说面对对象方法比结 构化方法的运用更加深化更完全;结构化方法与面对对象方法的区分(一)处理问题时的动身点不同 结构化方法是强调过程抽象化和模块化,以过程为中心构造或处 理客观世界问题的,它是一种面对过程的开发方法;面对对象方法强调 把问题域的要领直接影射到对象及对象之间的接口上,是用符合人们 通常的思维方式来处理客观世界的问题;

3、(二)处理问题的基本单位和层次规律关系不同 结构化方法把客观世界的问题抽象成运算机可以处理的过程,处 理问题的基本单位是能清楚表达过程的模块,用模块的层次结构概括 模块或模块间的关系和功能;面对对象方法是用运算机规律来模拟客 观世界中的物理存在,以对象的集合类作为处理问题的基本单位,尽可 能使运算机世界向客观世界靠拢,以使问题的处理更直截了当,面对对 象方法是用类的层次结构来表达类之间的继承和进展;(三)数据处理方式与把握程序方式不同 结构化方法是直接通过程序来处理数据,处理完毕后即可显示处 理结果,在把握程序方式上是依据设计调用或返回程序不能自由导航,各模块程序之间存在着把握与被把握的关系;

4、面对对象方法将数据与 对应的代码封装成一个整体,原就上其它对象不能直接修改其数据,即 对象的修改只能由自身的成员函数完成,把握程序方式上是通过“ 大事 驱动” 来激活和运行程序;(四)分析设计与编码转换方式不同 结构化方法强调分析、设计及编码之间按规章进行转换,贯穿软件 生命周期的分析、设计及编码之间实现的是一种有缝的连接;面对对象 方法从分析到设计再到编码就接受一样性的模型表示,贯穿软件生命 周期的分析、设计及编码之间是一种平滑过程,即实现的是一种无缝连 接;结构化方法和面对对象方法各有优缺点 主要表现在如下几个方面 : 一 从执行效率来说;结构化方法比面对对象方法产生的可执行代 码更直接

5、, 更高;所以对于一些嵌入式的系统 , 结构化方法产生的系统 更小, 运行效率更高 ; 二 从重用性方面来说;接受结构化方法的系统难以修改和扩充;结构化分析与设计清楚定义了系统的接口, 当系统对外界接口发生变动时, 往往造成系统结构较大变动 , 难以扩充新的功能接口;接受结构化方法的系统可复用性较差;结构化方法将数据和操作分别 , 导致一些可重用的软件构件在特定具体应用环境才能应用 , 降低了软件的可重用性;面对对象方法具有很好的重用性;在遇到类似的问题 , 通过应用了抽象继承等技术 , 来重用代码 ; 三 从程序语言编译器来说;面对对象方法, 通过编译器实现代码的面对对象性;也就是说经过编译

6、器后 , 代码会被翻译为相对应的结构化代码;所以要娴熟开发 , 仍要懂确定的结构化方法做为基础 ; 四 从把握难度来说 , 面对对象方法比结构化对象方法复杂 , 难于懂得;面象对象方法的内容广 精, 概念多 , 而且很多都是难于懂得 , 做到通更加不易; 应用面对对象方法 , 常常需要一种支持的分析 , 设计方法 , 如RUP 方法 , 灵敏方法等;这些学问抽象枯燥 , 难于把握;面象对象方法要经过长期的开发实践才能很好的懂得 学问内容少 , 简洁上手 ;, 把握;相比之下 , 结构化方法 五 从应用的范畴看 , 结构化方法适用于数据少而操作多的问题;实践证明对于像操作系统这样的以功能为主的系

7、统 , 结构化方法比较适应它;面对对象方法正好相反, 对于数据库 , 信息治理等以数据为主的而操作较少的系统 , 用面对对象方法描述要好于结构化方法;七、结语综上所述,软件开发的目标是以最小的代价开发出中意用户需求 的软件;为此 , 依据系统的实际需求 , 分别针对具体情形选择接受不同的 设计方法 , 可以充分发挥面对对象与结构化方法各自的优势;目前在大多数软件系统的分析设计过程中 笔者以为,开发者在开发实践中, 这两种方法都兼而有之;, 从实际动身 , 考虑执行效率、开发者的技术水平、系统规模、是否为易需求变化的系统等因素 , 尽量利用它们各自的优点 , 防止他们的缺点;如对于开发一些小型嵌入式实时监控系统或

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论