TCR变体:讲故事的人

TCR的此版本是(test && commit || revert)的另一个变体。 对于其他人,请参见此处。 我一经确信,“讲故事的人”就是个好主意。

注意 :TCR对您来说是新手? 查看 这篇文章 ,其中提供了背景,上下文和示例。

tl; dr而不是仅重置代码,“讲故事的人”以一种“人为”的方式进行通信,因此,就像一对人在我的项目上远程工作一样。

好友

“讲故事的人”基于伙伴的想法,如“ TCR变体”中所述。 但让我重复一遍:

“您能走多低?”手动触发TCR会记住TDD。 但是,如果我们想进一步缩短反馈周期,我们可以做更多的事情。 这种方法适用于Google文档(这是我们的圣杯)的方向:

 虽然真实 

./tcr
已完成$猫tcr
./buildIt &&(./test && git commit -am working || git checkout HEAD — src / main /)

那么,为什么叫“伙伴”呢? 您必须尝试一下。 当您进行编码时,就像有人坐在您旁边,并且一旦发现错误,他就会使您回到绿色状态。 在此斐波那契帖子中的示例中,将加号替换为减号。 幽灵手立即将其变回原样。 与好友一起,您将感受到TCR的真正精神。

讲故事的人:超越好友

所以我们有计划

 虽然真实 

建立&&(测试&&提交||恢复)
完成

该构建只是为了防止由于输入错误而引起对源代码的怀疑。

如“身体”中所述,使用这种TCR进行编程就像是鬼在与您进行配对编程并纠正您(如果您错了)。

这个鬼无法与您说话或交流。 它只是做某事。 但是,如果可以呢? 它会变成几乎与您相邻的类人对。 如何实现呢?

以“还原”交流

Revert从Git获取信息并执行该操作。 现在是额外的步骤,它定义了“故事出纳员”。 它将信息另外放置在文本模板中,添加了一些信息,并将所有信息传达回用户。

  $ cat还原 
messageContent = Git.getDiffAndWhatToReset
消息= MessageGenerator.generateWith(messageContent)
Git重置
列印讯息

结果消息看起来像是来自远程结对编程器。 例如:

  • 嘿,在执行Test’testFeatureX.java’时,我在文件Source.java的第87行发现一个错误。 为了尽快进入绿色状态,我删除了引起问题的行。 好?
  • 到目前为止,它似乎仍然有效。 我保存更改并重新运行测试。

这种交流可以在聊天中完成 ,我可以在其中操纵“讲故事的人”的行为,例如设置其他策略或推送代码或通过语音界面(但我希望一段时间后会变得烦人,我必须尝试一下!)

目标

目标是感觉到另一个“人”的存在。