合同设计中什么样的先决条件是合理的?
假设我们有一个带有以下构造函数的类 Student: /** Initializes a student instance. * @param matrNr matriculation number (allowed range: 10000 …
如何使用 RESTful Web 服务按合约进行编码
作为最佳实践,我们公司使用合同优先方法创建 Web 服务。 WSDL 是在考虑实现之前定义的。 是否可以使用 REST 来使用这种方法?我正在考虑使用 XSD,但…
在 Python 中使用契约设计
我希望开始在工作中的大量基于 Python 的项目中使用 DBC,并且想知道其他人有哪些使用它的经验。到目前为止,我的研究结果如下: http://www.python.o…
处理 switch 语句
处理以下情况的首选方法是什么: switch (numberOfActualBytes) { case 1: return something1; case 2: return something2; case 3: return something…
将 Cofoja 与 Wicket 一起使用(甚至仅与 Maven 一起使用)
我正在尽力让 Google Cofoja 在我的 Apache Wicket 应用程序中运行,该应用程序使用 Maven2 似乎是标准的。 该项目最初是使用 Leg Up 生成的,原型为…
如何扫描使用 COFOJA 编写的合同中使用的注释?
我正在开发一个项目,我必须使用 COFOJA 为方法编写合同,并且必须使用启发式方法从合同生成方法代码。 1) 我如何能够扫描 COFOJA 中使用的注释,如 @…
C# 4.0 中的代码契约
我做了一个这样的方法 class PersonCollection { [Contracts.CanReturnNull] //dont know if something like this exists? IPerson GetPerson(Guid pe…
何时添加前置条件以及何时(仅)抛出异常?
我正在学习先决条件以及何时使用它们。有人告诉我 前提条件 @pre fileName must be the name of a valid file 不适合以下代码: /** Creates a new Fi…
RacketScheme的“合同设计”是如何实现的?与埃菲尔铁塔有何不同?
我知道Eiffel(其鼻祖)和Racket都实现了“Design by Contract”的功能。可悲的是,我不确定其中一个与另一个有何不同。 Eiffel 的 DBC 依赖于 OOP 范…