做程序员好多年了,一直有个疑问,几乎没有一个程序或者功能是完全一次性写完不修 bug 的

2023-09-21 08:06:24 +08:00
 xiaotuzi

由于最近写小工具,自认为很简单,而且写的时候还是比较认真,但还是写了些 bug ,回想起自己这么些年,每次做功能都要重新去 check 代码,debug 代码,真的感觉经验并不能完全取代 bug 的产生,写代码至少要多重复一遍,大家有没有这种感觉?还是只有我自己才这样?

12593 次点击
所在节点    程序员
113 条回复
luomao
2023-09-21 09:35:16 +08:00
我现在写代码,如果出 bug 我觉得在我预期之类,反倒是完全测不出 bug 会让我有种有隐藏 bug 没有复现的感觉。人无完人,写 bug 难免的,但别总是出低级 bug 。
cmdOptionKana
2023-09-21 09:37:33 +08:00
为什么人类发现万有引力那么难,明明每个人看各种东西掉在地上看过无数遍了,就是想不到万有引力。

为什么人类发现相对论那么难,需要顶级的天才。

量子力学就更难了,为什么那么难?因为本来就是那么难,本来就该那么难。

零 bug 也一样,复杂度摆在那里呢,本来就是很复杂的逻辑交织在一起。
victorc
2023-09-21 09:39:39 +08:00
是你的问题

写代码一遍过是完全做得到的,多练习,提高专注力
qping
2023-09-21 09:40:18 +08:00
越庞大的系统,越多人参加,bug 就会越多

增加各种测试可能是唯一的办法:单元测试,集成测试,系统测试
oneisall8955
2023-09-21 09:42:22 +08:00
有时候会把判断条件写反了,自测才发现😂
la2la
2023-09-21 09:42:23 +08:00
我只有在进入那种全神贯注感觉周围什么都听不见那种状态写的代码错误率极低,不过很少很少有这个状态
luobingit
2023-09-21 09:42:52 +08:00
测试先行
iblessyou
2023-09-21 09:43:20 +08:00
不用纠结,我现在打字写东西,明明感觉写的时候都好着,但写完难免发现很多错别字。
看小说你会发现网文作者自己也会每章写完对一下错字。
所以出 bug 很正常,这个情况只要在你自己写完后的测试时发现解决了就可以。
HyperionX
2023-09-21 09:45:52 +08:00
刷题少了
realpg
2023-09-21 09:46:25 +08:00
我自己写的有很多,因为自己的代码标准,注释标准,加上人工测试覆盖较好。

协作的很难
eycode
2023-09-21 09:46:28 +08:00
那个不是 bug ,是程序运行另一种展示,只是我们接受不了这种展示而已。手动狗头.jpg
cwcc
2023-09-21 09:49:18 +08:00
人不能保证建造的房子一块砖瓦都不掉,一块油漆都不刮花,也不能保证自己房子绝对不会倒,这个逻辑应用到代码上同样适用。
iOCZ
2023-09-21 09:52:50 +08:00
万物皆 bug
tkHello
2023-09-21 09:54:10 +08:00
要环保 采用一次性程序员
Mutoo
2023-09-21 09:54:23 +08:00
是的,就连大名鼎鼎的 knuth 也没办法做到 0 bug
https://en.wikipedia.org/wiki/Knuth_reward_check
duanxianze
2023-09-21 09:56:08 +08:00
现代人类相比几万年前的人类几乎没有进化,步入工业时代更是只有短短几百年,知足吧,兴许再过几十万年人类就能进化到脑内编译代码了
darksword21
2023-09-21 10:00:18 +08:00
我就问你时间能不能倒流 🐶
xz410236056
2023-09-21 10:04:49 +08:00
@hamsterbase #1 不是学计算机的吧,你这种叫 TDD 。早八百年前就有了,没 BUG 了吗
crazyzzm
2023-09-21 10:07:46 +08:00
think more, code less.
敲代码前思考越全面,敲代码时思路能更清晰,bug 也就能更少了
RageBubble
2023-09-21 10:08:08 +08:00
你在追求一件虽然有可能做到但毫无意义的目标。有这功夫不如多测试几下,让自己的程序更 robust

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

https://tanronggui.xyz/t/975722

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

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

© 2021 V2EX