播客“内核恐慌”某期中提到: TDD 是平庸者的保障。。。。是么?

2015-07-11 21:46:00 +08:00
 Feiox

在我所见到的无论是闭源还是开源代码中,甚至像 redis 、 requests 这种公认的高质量代码中,都会看到一个文件夹叫 tests。那么,是因为这些作者也是所谓的“平庸者”?
节目中说的,主播们不喜欢写测试,还提到上古时代,Hack God 们大概可能也不写测试。那么,这两位主播的水平又是在哪一个层次上呢?

6268 次点击
所在节点    程序员
44 条回复
engHacker
2015-07-11 21:50:42 +08:00
在生产环境中,如果不测试,我只能呵呵。人不要太自信。尤其是涉及到钱的软件,如果不测试,出了问题,那就是灾难。
hahastudio
2015-07-11 21:52:37 +08:00
如果软件真要成为工业,就必须要有测试。
feikaras
2015-07-11 21:55:04 +08:00
呵呵
johnsmith123
2015-07-11 21:55:49 +08:00
LZ 我看你骨骼惊奇,为何不去做测试?
Feiox
2015-07-11 22:03:54 +08:00
@johnsmith123 @feikaras 啊?(́◉◞౪◟◉‵)
bengol
2015-07-11 22:05:35 +08:00
比较认同这个观点
Comphuse
2015-07-11 22:06:11 +08:00
没听过节目,单从“TDD 是平庸者的保障”这句话看来没问题啊。就像“好记性不如烂笔头”只对普通人成立,那种拥有照相机记忆的天才不需要。
参考: http://www.zhihu.com/question/29047376/answer/43224089 。链接里那种人就算不写测试也比普通人捅篓子的概率低一百倍。
kaichen
2015-07-11 22:11:47 +08:00
开源项目的作者写自动化测试不是因为他们平庸,而是担心其他人(有可能是平庸之辈)把他写的代码搞坏好吗?

有时别人一个 Pull Request 过来,先跑一下看看有没有把自己的代码搞坏,然后再看他做了什么,有没有道理。

另外,TDD 和自动化测试也是两个概念好吧?
yangxiongguo
2015-07-12 00:58:34 +08:00
大部分人是平庸者滴,要认清这点。
FrankFang128
2015-07-12 01:00:11 +08:00
楼主的逻辑很奇怪。
你这样想吧:
TDD 比非 TDD 多一项功能:保障平庸者。
ibremn
2015-07-12 01:06:10 +08:00
TDD 和 tests 不是一回事儿。
另外楼主你逻辑有问题。
elvba
2015-07-12 01:47:13 +08:00
没错啊,因为我们大部分人都是平庸者……
crayygy
2015-07-12 08:35:06 +08:00
不写测试的有两种人
一种人牛到不需要测试,他自己就足以保障代码质量。
还有一种人……不提也罢
ltm
2015-07-12 09:27:14 +08:00
TDD 应该是Test-Driven Development吧,先写测试,然后让程序通过测试,再迭代。
TDD和Unit Test是两码子事。
raptor
2015-07-12 09:28:08 +08:00
@crayygy 不幸的是:后者是大多数,但他们却总以为自己是前者…
zhigang1992
2015-07-12 09:31:35 +08:00
没有测试,敢重构么?
就算自己写的代码,三个月后还认识么?

测试还可以当文档看。

TDD还有一个好处就是然你先考虑接口,再考虑实现
williamx
2015-07-12 10:52:40 +08:00
“TDD 是平庸者的保障”这句话本事是完全正确的。当软件开发从个人精英发展成工业团队之后,从事这个工作的大部分员工都是“平庸”的普通人,如何保障他们的出产的品质是很有必要的一件事情。
pH
2015-07-12 10:57:07 +08:00
最开始看标题以为是说TDD和FDD。LOL
101
2015-07-12 11:07:02 +08:00
明显有问题,单打独斗可以不写,开源项目能保证所有 contributor 都提交无 bug 代码?更不要提公司团队合作了,不是天才们变平庸了,而是开发方式变了,这个时代的需求和演进速度都不一样。
东施效颦还是变不了西施
Shared
2015-07-12 11:52:54 +08:00
这个世界本来就没那么多天才,承认自己是个平庸者也不会死

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/205029

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX