我已经在 microsoft 网站上查找了差异,但实际上并没有看到差异。该网站的链接如下
任何额外的解释都会很棒
使用 Visual Studio C#
Requires
是一个前置条件,这意味着在调用方法之前指定的条件必须为真。Ensures
是一个后置条件,意味着该方法保证在方法调用完成后指定的条件为真。
执行方法时可能会违反前置条件和/或后置条件:测试分别在进入和退出方法时完成。一个不变的条件是一个契约,它说指定的条件总是成立的。
阅读Bertrand Meyer的面向对象的软件构建以了解更多 [更多] 细节。Meyer 的这篇论文更短[短得多]。