【问题标题】:Why are TDD 'Spikes' called 'Spikes?为什么 TDD 的“尖峰”被称为“尖峰”?
【发布时间】:2010-09-19 23:34:10
【问题描述】:

测试驱动开发人员指的是快速、探索性的调查,其中涉及编写代码以查看其是否有效尖峰

任何想法为什么他们想出了这个词?

更新: Kent Beck 的造币对我来说看起来像是“原版”,尽管在我看来他对这个词的使用没有多大意义。编写快速测试代码是“在项目中投入大量精力”?

有趣的是,他似乎不再使用这个词,因为它让不同的人联想到不同的含义 - 请参阅下面的证据!

【问题讨论】:

    标签: tdd extreme-programming


    【解决方案1】:

    Ward Cunningham 在WardsWiki(指 Kent Beck)上写道:

    我经常会问肯特,“什么是 我们可以编程的最简单的事情 会让我们相信我们是对的 轨道?”这样跨出 手头的困难常常使我们 更简单、更有说服力的解决方案。 肯特将其称为斯派克。我找到了 练习时特别有用 维护大型框架。

    肯特贝克在Guide to Better Smalltalk写道:

    有时我将其称为“尖峰”,因为我们正在整个设计中推动尖峰。 [...] 因为人们将“尖峰”与排球、铁路或狗联系在一起的方式各不相同,所以我开始使用“架构原型”来描述这个实现。

    【讨论】:

      【解决方案2】:

      恕我直言,钉子一词与钉子穿过木板有关。 是的..这里是

      “Spike”是一个极限编程术语 意思是“实验”。我们用这个词 因为我们认为一个尖峰有一个 快速,几乎是蛮力的实验 旨在学习一件事。 想想用一根大钉子穿过 板。
      -- C# 极限编程冒险 - Ron Jeffries

      【讨论】:

        【解决方案3】:

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

        【讨论】:

        • 这是一个有趣的类比,我喜欢它,但大多数登山者会称它们为岩钉,而岩钉在几乎每个已建立的攀登区已经过时了大约 30 年(自凸轮装置问世以来) )。 =P
        【解决方案4】:

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

        【讨论】:

          【解决方案5】:

          Jargon File 有以下条目:

          尖峰 v.

          1. 通过引入强制特定结果的(有时是临时的)设备来破坏选择机制。这个词用于多个行业;电话工程师指的是通过插入一个销钉来使继电器保持在关闭或打开状态,铁路工程师指的是钉住一个轨道开关,使其无法移动。在编程环境中,它通常是指临时更改,通常用于测试目的(与永久更改相反,这将被称为硬连线)。

          2. [边缘技术术语] 原本相当恒定的图形中的可见峰值(例如,线路电压突然浪涌,电路中逻辑线路上的意外短路“高”)。黑客经常使用它来突然增加一些数量,例如系统负载或网络流量。

          【讨论】:

            【解决方案6】:

            我相信这是一种工程表达。尖峰是一种临时解决方案,在您制定永久解决方案之前,您会尝试看看它是否有效。铁路工程师谈到钉住轨道道岔:将轨道道钉插入道岔,使其无法移动。

            【讨论】:

              【解决方案7】:

              之所以称为Spiking,是因为它切穿了系统的所有层。这就是他所说的建筑原型的意思。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 2014-05-29
                • 1970-01-01
                • 2018-08-21
                • 2021-01-07
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多