程序员为什么要写bug 程序员写bug是什么意思

网友提问:

为什么程序员写出的程序都有bug?对此你怎么看?

优质回答:

从事编程也有些年头了,也算是在编程领域见过世面的,就没见过没有bug的程序,程序的功能越多越容易出bug,所以外行人特别不理解程序员整天忙活些什么东西,东西写完直接提交不就可以了嘛,为什么整天加班,天天盯着电脑还有这么多事情没搞定。

这是外界对于程序员工作不理解一个典型的表现,程序员在开发功能模块的时候,设计框架的时候还是要尽量减少bug的出现,同时还要能够避免一些不可能事情的发生,所以越是顶级的高手,越是不轻易下手搞代码,几乎要把所有的事情都想通了,觉得差不多了,就开始大量代码写作过程中了,其实真正写代码的时间只占总时间百分30都不到,大部分时间是在设计和调试bug的过程中。

即使再厉害的程序员也不能把所有的技术细节都想的面面俱到,而且在现实中留给程序员的开发时间少的可怜,所以有些程序出问题其实不一定是程序员本身造成的,现在很多互联网公司已经形成的惯例,一周至少发布一次版本,甚至一周两次版本的发布,很多时候快到下班点的时候,产品经理过来说有个新需求要加,今晚就要发布版本,通常这种情况比较多,好在互联网公司大部分属于应用级的开发,多少还能经得起折腾,如果是每天伤筋动骨的折腾产品早晚出问题。

有很多搞笑的程序员玩个佛祖保佑的注释其实这东西起不到什么作用,就是程序员玩的一个小游戏而已,不修改bug就不是程序员了,程序员和bug是鱼和水的关系,谁都离不开谁,所以工作中脱离开了bug,基本上意味着脱离程序员岗位了,作为开发多年的程序员尝试分析下为什么程序员离不开bug,或者讲如何减少bug的出现?

1.良好的代码习惯,在写代码的时候就把一些可能存在的问题屏蔽掉,减少警告代码的出现,积少成多很容易出问题。

2.写代码的时候尽量保证自己意识的清醒的,注意力高度集中的情况下出问题的概念会大大降低,尽量熬夜加班写代码的时间,有时候一个很小的细节就能导致程序运行出问题。

3.在有时间的情况下可以写写单元测试,保证单个模块功能的稳定性,很多程序员觉得很麻烦,一旦出了问题再去补救这个时间成本将更大。

4.注释尽量写的清晰,有些人当初写的代码,到后来再去看的时候根本看不出当初的设计思路,证明当时在写代码的时候并没有完全理解通透,如果加上几句关键的注释很可能看一眼就能知道为什么要这么去做了。

5.充分理解功能需求,吃透需求就能减少冤枉路,很多人为了赶时间还没彻底明白咋回事就着急写代码了,这种最容易出错,要明白提出这个需求具体场景是什么,在设计模块的时候就能做到有的放矢。

相对来讲优秀的程序员出的bug会少一些,新手程序员更加容易出问题,作为一个程序员要懂得在解决bug过程中让自己成长。

希望能帮帮到你。

其他网友回答

程序员写出的程序都有BUG这个认识应该是不太对的,很容易误导让人认为有BUG情有可原。

每一个程序员写程序或多或少都会犯错误,优秀的程序员做事比较认真,对自己的要求比较高,编程之前先构思,然后再写各个场景的单元测试,然后才是编程,这样一般都是开发核心功能或者是公共组件的一个开发过程。

目前在中国IT公司,讲求的是开发速度,需求变化非常快,很多开发人员没有时间进行单元测试、也不会留有太多时间构思,大部分是代码复制,这样就导致了BUG大量发生。在国内团队里还是管理人员有话语权,技术人员大多在执行,如果管理者懂技术还好点,对编程规范比较在意。最主要的是优秀的程序员少,缺乏设计能力、对技术不感兴趣,这个行业目前流动性比较大,很难形成一个优秀的开发团队。

其他网友回答

正常现象,业界一句话,好程序是调出来的

其他网友回答

人都无完人,何况靠人编写的程序~

其他网友回答

这个跟程序软件的规模有关,规模越大,出现bug 的可能性越高。如果一个简单的hello world 就没有bug了。需求复杂导致软件复杂,也就是程序复杂,所以程序中存在bug 便会不可避免。

版权声明