软件为什么总会有bug?

如果你的程序没有bug,只能说明你的程序不够复杂!

地球到月球的距离为39万公里;

假设一张纸的厚度为1mm,可以无限对折;

将纸对折39次就能达到54755.81km的厚度,远超地月距离;

软件为什么总会有bug?
Adobe

打开任意一款Adobe软件的菜单,你会发现30个选框不算多.

在实际的软件测试中,可以使用软件进行自动化测试,如果勾选一次选项用1秒钟,一天最多也只能测试86400次,一年最多测试31622400次(按366天算).而测试完30个选框需要1073741824次.

所以测试所有的选框需要:

1073741824/31622400 = 33.9年

由于指数爆炸的存在,要一个不漏的测试所有的选项是不现实的,所以人们只能对常用的功能进行测试,正因如此,复杂的软件总会有bug存在