在调用例程之后和之前,在哪里评估不变量?
|
在按合同设计时,必须在两种情况下满足类不变式:创建对象后和调用例程后。是否有示例或条件,在调用例程之前也必须进行评估?
没有找到相关结果
已邀请:
1 个回复
坝镰补翔奋
现在,以下代码违反了类
的不变式:
外部状态。对象与在类不变式中引用的外部数据耦合,并且可能会意外更改:
现在,如果在应用程序外部修改数据库,则缓存可能会变得不一致,并在以下功能调用之前触发类不变违规:
打回来。可以将一个对象以无效状态传递给另一个对象:
由类
的功能
执行的对
的回调会导致不变的冲突,因为
状况不佳:
可以说所有情况都是由于软件错误和缺陷引起的,但这正是类不变式捕获这些特征(包括在功能调用之前发生违例的情况)的目的。