cost 210 ms
弱前置条件和强后置条件问题? - Weak precondition and strong postcondition problems?

在上次考试中,我有问题,我无法理智地回答。 问题是“前提条件太弱可能会出现什么问题? ” 另一个问题是“后置条件太强会导致什么问题? ” 如何回答这个问题? 我试图解释弱前置条件评估为真,可能不足以暗示强后置条件为真,但似乎还不够。 我想知道,什么是正式的理智答案,实际上是两个简短的问题。 “前 ...

前后条件的强弱 - Strengthening and Weakening of pre and post conditions

我一直在阅读按合同设计的主题,到目前为止,我写了以下注释: 我想确认一个例子来澄清我的理解。 契约式设计表示,如果exampleA中processInt的前提条件是“ exampleInt必须大于 10”,而后置条件是“返回值在 20 到 50 之间”,那么exampleB的方法exampleInt ...

使用“按合同设计”的好处 - Benefits of using 'Design by Contract'

我正在研究“按合同设计”的开发方法。 但是,我很难看到它的优势。 例如,据说这种方法的特点之一是function的前提条件可以用它的header来表达。 因此,我们可以有这个例子,其中我们将数字 10 除以任何数字,其前提是它必须大于 0: 但是,与其他更传统的做法相比,它给我带来了什么好处? 我所 ...

eiffel:当断言打开时显式执行代码的语句 - eiffel: a statement for explicitly executing code when assertions are on

有时,检查和合同构造需要详细说明,当删除断言以提高性能并避免使用编译器的“唯一”工作做无用的事情时,需要避免这种情况。 我指的是前。 在循环检查或其他事情中工作。 有时不得不构建一个 function 或者不得不考虑如何在断言打开时不执行而构建它,这违背了合约的直观方式及其意义。 我特别提到chec ...

estudio 什么时候不检查`require`? - estudio does not check `require` when it should?

即使我在项目设置中启用了 Eiffel Studio 似乎也满足了我的要求。 据我记得,我有时间在需求中设置一个断点...... 我不明白我在这里缺少什么,正如您在我的示例中看到的那样,要求通过,因为我对代码有相同的条件并且它进入( attached {POWER_DEVICE} a_csv.de ...

Node.JS 服务层设计 - Node.JS service layer design

我有一个非常简单的 express js 服务器,它接受来自客户端的请求,执行一些业务逻辑并响应客户端。 请求-响应管道由 controller 处理,业务逻辑在服务层内部执行。 该代码可以正常工作,但我不确定从服务层向 controller 返回错误的方式是否正确。 controller 看起来 ...

我需要一个关于如何使用 TDD 和 Design by Contract 的基本具体示例 - I need a basic concrete example on how to use TDD along with Design by Contract

我见过很多类似的问题这个和这个。 有些人看到 TDD 和 Design by Contract 之间存在重叠,而其他人则说它们是互补的,我偏向于第二个,所以我需要一个非常基本、正确和完整的任何语言的示例,甚至是关于如何使用它们的伪示例一起。 ...

单元测试中如何强调对输入数据的限制? - How emphasize restrictions for input data in unit testing?

我有参数化测试,例如: 测试test_good_input必须仅适用于有效的时间字符串(对于无效数据,我还有另一个测试test_bad_input )。 我如何强调它 - 在文档字符串中,或​​对输入数据使用断言? 使用文档字符串 带验证输入 或者还有其他方法吗? ...

基于方法前/后条件自动生成单元测试的工具/技术 - Tool/Technique for Automatic Unit Test Generation based on Method Pre-/Post-Conditions

我想知道是否有任何工具可以根据方法的前置条件和后置条件(以及类不变性)自动生成单元测试。 确切地说,假设我们为方法指定了前置条件和后置条件(并且可能是类不变的),并且我们希望基于该信息生成单元测试。 我正在为此目的寻找实用工具。 我知道Korat和TestWizard。 您能否再 ...

可以在编译时强制执行“按合同设计”检查吗? - Is it possible to enforce Design by Contract checks at compile time?

在阅读按合同设计教程时,我偶然发现了以下内容: 埃菲尔铁塔的合同不仅仅是一厢情愿。 可以在运行时在编译选项的控制下对其进行监视。 随后说明它们在失败时将引发异常。 它使我认为所有require ensure invariant all检查都可以在运行时执行或关闭。 这个对 ...

返回null,异常,合同 - Returning Null vs Exception vs Contract

处理从数据库中返回具有以下3种潜在结果的记录的可接受方法: db连接有效,找到一个用户并返回一个填充的用户对象 db连接有效,找不到用户,返回新的用户对象 DB连接/查询失败... 我大部分时间都是按合同设计的: 在数据库连接或查询失败的情况下,我应该做 ...

dbc-有人实际上不敢在被调用的例程中检查前提条件吗? - Dbc - anyone actually dare not to check preconditions in the called routines?

我知道DbC要求调用者对前提(参数或成员变量的值)负责,而我刚刚读过其中一本书,实际上很少有人敢于承担所有责任。调用代码,不要检查被调用例程中的输入。 但是我在想,这还会导致重复吗? 如果我需要从多个位置调用方法该怎么办..在所有这些位置,我都需要确保满足先决条件。 我可以从几个模 ...

应用按合同设计时,存储输入值以检查后置条件是否成立 - Storing input value to check wether postcondition holds true when applying Design-by-Contract

我经常使用assertthat包来检查函数中的后置条件。 在阅读更多有关按合同设计的想法时,我偶然发现了将输出与输入值进行比较的想法。 最简单的示例如下: 可以立即声明x == !old_x必须始终为true。 ( old_x代表评估前x的值。) (当然,此示例过于简化, ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM