c编程平台的功劳,绝大多数简单重复的码代码工作都被自动完成的软件取代了,自然不需要堆砌大量底层程序员了。
而且因为全部代码都由软件统一完成的关系,整体的质量也相当高,虽然这些代码难免陈旧呆板缺乏天才的灵光一闪,但同时也避免了普通人的大意失误,而在软件开的历史上这种大意失误无疑是要比灵光一闪要多得多的,其所造成的破坏力也是越来越大的,光是看看补丁摞补丁的ap1ayer,分别给它们的用户和开者造成了多么大的麻烦就可以看出来了。
当然,这一大一小两款软件之所以“bug满天飞”,倒也不是开者水平低下或者说居心不良,实在是因为这是很难完全避免的一件事情。
计算机的展历程,先后经历了机械式继电器式电子管式晶体管式,直到现在的晶体管集成电路式,早期计算机有着体积巨大结构复杂的特点,难免会有一些小虫子悄悄钻进去安家的情况实在难以避免。而那个时代的计算机上跑的程序都是真正的“硬件编程”——每次都要具体计算任务改动电路连接方式,所以偶然闯入的小虫子有时候就会导致设备运算出错,早期程序员们除了像机械技师电话接线员一样操作计算机以外,也多了一个重要的工作就是反复排查抓虫子,毕竟算一次不容易,要是被臭虫(bug)祸害了结果,那可就坑爹了。
到了后来,随着大规模集成电路的越来越强大,虽然计算机的复杂度进一步激增,但是变得复杂的是芯片内部微米甚至纳米尺度的变化,而在宏观尺度上计算机的结构却是越来越简单的,自然再难被虫子什么的影响了运算结果,然而因为软件和硬件原因撤人出现的错误依然连绵不绝,bug(漏洞错误)这个计算机名词也就流传了下来,并因为计算机的影响力越来越大而渗透到其他行业。
导致bug出现的原因有很多,有软件编写的原因,有编程工具的原因,有人的思维问题,有硬件技术的原因,也有用户的原因,可以说只要还存在人工开软件只要技术还在进步时代还在展,bug就永远不可能根绝,即使是坐拥bc平台的蜜蜂也只是以bug少闻名,而不是完美无缺绝无bug。
对于indos这样的大型软件来说,几千万代码的庞大规模前后过2o年的版本更新历史,使得它的作者不可能是个人或者小团队,前前后后参与这个项目,为其贡献代码的人成千上万。虽然使用通用编程工具保持良好代码结构随时写注释等等,维护“代码可读性”的规范早已深入人心,但是统一所有人的脑袋是如此之难,个人编程风格依然会存在个人理解依然有差异,自然就难免出现错漏冲突等等异常情况。
实际上,规范的大公司会通过良好的qaqc把这些问题压制在很低的程度。真正bug高的地方,一个是个人开者,一个是第三方。
>> --