抽象数据类型概念对软件系统有着重要作用,目前软件界已普遍转向使用面向对象系统。这种风格建立在数据抽象和面向对象的基础上,数据的表示方法和它们的相应操作封装在一个抽象数据类型或对象中。这种风格的构件是对象,或者说是抽象数据类型的实例。对象是一种被称作管理者的构件,因为它负责保持资源的完整性。对象是通过函数和过程的调用来交互的。

http://se.csai.cn/NewTech/Images/safg2.gif

图 数据抽象和面向对象风格的体系结构

  面向对象的系统有许多的优点,并早已为人所知:

(1)      因为对象对其它对象隐藏它的表示,所以可以改变一个对象的表示,而不影响其它的对象。

(2)      设计者可将一些数据存取操作的问题分解成一些交互的代理程序的集合。

  但是,面向对象的系统也存在着某些问题:

  (1)为了使一个对象和另一个对象通过过程调用等进行交互,必须知道对象的标识。只要一个对象的标识改变了,就必须修改所有其他明确调用它的对象。

  (2)必须修改所有显式调用它的其它对象,并消除由此带来的一些副作用。例如,如果A使用了对象B,C也使用了对象B,那么,C对B的使用所造成的对A的影响可能是料想不到的。

posted on 2016-03-27 19:15  Bacchus丶  阅读(1938)  评论(0编辑  收藏  举报