3.3 可变数据的模型

3.3 可变数据的模型

第二章中提到了复合数据作为组装有几个部分的
计算对象的一种方法,为了实现对真实世界中,有
几个部分的对象进行模拟.在那一章中,我们介绍了数据抽象的原则,根据术语,
数据结构被称为组装子(用来创建数据对象),选择子
(用来存取复合的数据对象的每一个部分),但是现在我们
知道数据有一个在第二章中没有提到的方面.对系统建模的期望组成的对象
已经改变了状态,导致我们需要修改复合数据对象,正如我们组装与选择它们。
为了对有改变的状态的复合对象进行建模,我们将设计数据抽象包括了,
除了选择子和组装子,还有操作叫做更新子,它修改数据对象。例如,对一个银行的
系统进行建模,需要我们修改账户的余额。因此,表示银行账户的一个数据结构可能
要承认一个如下的操作:

(set-balance! <account> <new-value>)

它改变指定的账户的余额到指定的新值。定义了更新子的数据对象被称为可变的数据对象。

在第二章中,我们介绍了数对,作为合成数据对象的通用的粘合剂。我们开始这一部分,
从定义数对的基本的更新子,来让数对能够作为组装可变的数据对象的构建块。这些更新子极大地
增强了数对的表现力,让我们能构建不仅仅是序列和树这样的在2.2部分中有效的数据结构。
我们也表示对复杂系统的模拟的一些例子,它被模型化为一些有局部状态的对象。

猜你喜欢

转载自blog.csdn.net/gggwfn1982/article/details/81610745
3.3