SoftEng 版 (精华区)
发信人: Autumn (冰河), 信区: SoftEng
标 题: 面向对象与结构化软件开发(2)
发信站: 紫 丁 香 (Sat May 13 18:03:37 2000), 转信
面向数据和面向操作两种方式根本上的缺陷在于,数据和操作是同一硬币的两面。
易知,数据只有在操作作用于它时才会改变,和数据无联系的操作等于是徒劳。所以,需要
有一种既注重操作又注重数据的技术。所以面向对象技术的出现来实现它应该不足为奇
。显然,一个对象中包含了数据和操作.回忆第6章,一个对象就是一个抽象数据型的实例
。因此,它合并了数据和作用于这些数据上的操作。一个对象中的数据有多个名称,可
以称之为属性、状态变量、实例变量、域或数据成员。操作被称为方法或成员函数。但
是如果忽略数据和操作在术语上的差异,它们是平等地存在于对象中的。类似地,在所
有面向对象的技术中,数据和操作都被认为是同等重要的,谁也没有优先性。在面向对
象的软件开发技术中,认为数据和操作是同时被考虑的说法是错误的。很显然,有时数
据被重点考虑,有时操作被集中研究。但是,总的来看,在面向对象的软件开发阶段,
数据和操作被赋予了同样的重要性。有很多原因被用来解释为什么面向对象软件开发技
术要优于结构化软件开发技术。所有这些原因中最根本的一条就是,一个设计合理的对
象,即一个具有高的内聚性和低的对外相关性的对象,能够为一个物理实体的各个方面
建立模型。而其具体实现是隐蔽的。与一个对象通讯的的唯一办法就是通过信息交换。
所以,对象基本上成为了一个具有良好接口的独立单元。因而它易于安全地维护;出现
类似于以往的错误的可能性减小了。而且,对象可以被重复使用,它的重用性以继承的
特性延续。考察应用对象的软件产品,这些基本的组建模块可以安全地组合在一起,能
够开发出一个比结构化技术所能够开发的规模更大的软件。因为对象基本上是软件产品
中的独立单元,所以,和管理软件开发一样,软件开发本身也更容易,从而出错的可能
性也更小。
--
※ 来源:.紫 丁 香 bbs.hit.edu.cn.[FROM: 202.118.234.136]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.325毫秒