为什么TDD';尖峰';称为';钉子?

为什么TDD';尖峰';称为';钉子?,tdd,Tdd,测试驱动开发人员指的是一种快速、探索性的调查,包括编写代码以查看它是否有效,一个峰值 知道他们为什么会想到这个词吗 更新:肯特·贝克(Kent Beck)的铸币在我看来就像是“原始”铸币,尽管在我看来,他对这个词的使用没有多大意义。编写一个快速测试是“在项目中插入一个尖峰” 有趣的是,他似乎停止使用这个词,因为它给不同的人带来了不同的含义——见下面的证据 因为它与众不同,就像图表中的一个尖峰。例如,CPU使用率激增。我一直认为这是一个登山类比。在上山的路上你在山上放了一个钉子。如果钉子粘住了,那

测试驱动开发人员指的是一种快速、探索性的调查,包括编写代码以查看它是否有效,一个峰值

知道他们为什么会想到这个词吗

更新:肯特·贝克(Kent Beck)的铸币在我看来就像是“原始”铸币,尽管在我看来,他对这个词的使用没有多大意义。编写一个快速测试是“在项目中插入一个尖峰”


有趣的是,他似乎停止使用这个词,因为它给不同的人带来了不同的含义——见下面的证据

因为它与众不同,就像图表中的一个尖峰。例如,CPU使用率激增。

我一直认为这是一个登山类比。在上山的路上你在山上放了一个钉子。如果钉子粘住了,那么往那边走就可以了。

我相信这是一个工程表达。尖峰是一种临时解决方案,在你做出永久解决方案之前,你会尝试看看它是否有效。铁路工程师谈论扣件道岔:将钢轨扣件插入道岔,使其无法移动。

具有以下条目:

尖峰

  • 通过引入(有时是临时的)强制产生特定结果的装置来破坏选择机制。这个词被用于几个行业;电话工程师指的是通过插入插脚将继电器固定在闭合或打开状态来扣住继电器,铁路工人指的是扣住轨道道岔,使其无法移动。在编程环境中,它通常指的是临时变更,通常用于测试目的(与永久变更相反,永久变更称为硬连线)

  • [borderline techspeak]在其他情况下相当恒定的图形中的可见峰值(例如,线路电压突然激增,电路中逻辑线上出现意外的短路“高”)。黑客经常利用这一点来突然短期增加某些数量,如系统负载或网络流量


  • 钉子一词与钉子穿过木板有关。 是的。。给你

    “Spike”是一个极端的编程术语 意思是“实验”。我们用这个词 因为我们认为钉子有一个 快速的,近乎蛮力的实验 旨在学习一件事。 想一想把一颗大钉子钉进一个洞里 董事会。
    --C#中的极限编程冒险-Ron Jeffries

    沃德·坎宁安写道(指肯特·贝克):

    我经常问肯特,“这是什么 最简单的事情我们可以编程 会让我们相信我们是对的 轨道?“这样一步一步走出 眼前的困难常常使我们陷入困境 更简单、更具吸引力的解决方案。 肯特称之为钉子。我找到了 练习时特别有用 维护大型框架

    肯特·贝克写道:

    有时我称之为“钉子”,因为我们在整个设计中都使用钉子。[…]因为人们将“扣球”与排球、铁路或狗联系在一起,所以我开始使用“架构原型”来描述这种实现


    它被称为“尖峰”,因为它贯穿系统的所有层。这就是他所说的建筑原型的意思,这是一个有趣的类比,我喜欢,但大多数登山者都会称之为岩钉,岩钉在几乎所有已建立的登山区已经过时了大约30年(自摄像设备出现以来)=P