软件构造期末复习RI和AF

invariants

一个好的ADT应该在使用和设计过程中使用遵守规约,这样才能保证ADT的安全性,设计一个好的不变量并在每时每刻保持该不变量是ADT安全的前提。
所谓不变量是ADT需要始终保持其不变的量。
如何保持不变量有一下几种方法:1、域设置为私有。2.防止表示泄露。3、严格遵守规约。
而具体的检测方法是:实现CheckRep(),在代码中检查不变量。

RI和AF

在设计ADT时,我们要关注两个空间。表示空间R和抽象空间A,前者是我们开发者关注的空间而后者是用户关注的空间。而两个空间的映射关系称为AF。
对于表示空间的理解:狭义上将可以理解为我们ADT的域中变量的具体值。
对于抽象空间的理解:这些值所反映的某个对象的性质。
而AF就是将表示空间和抽象空间联系起来的映射。这个映射必须是满射,因为抽象空间的所有制必须有一定的表示,不一定为单射,因为不同的表示可以代表同一个抽象的值。
在很多情况下R->A的映射往往是比较简单的,比如实验3中计划项的AF函数,就是简单的将表示空间的时间链表、地点链表、状态映射为实际生活中的计划项的执行时间、地点以及当前状态。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值