一个BUG引发的思考
2013-05-17 01:05
281 查看
有一个bug:程序在调用setObject(1,“test”)时,报java.lang.StackOverflowError (栈溢出)的问题。
提交BUG后,研发的同事将此方法的实现方法发过来,如下:
当时看到这方法,愣住了,继而无力的笑了,居然还有这样实现方法的。同时,研发那哥们又给我粘贴了另外一些方法,都是只有也该方法,其内部什么都没有实现
有如此代码,开发的产品就可想而知。
这里不是要说,我公司的产品怎么样,而是由此引发了一点思考。
一名程序员,居然写出这样的程序,且流出来让他人使用,这不是一名合格的程序员的基本素质吧。
和同事讨论起这事,很多时候,现在并不缺乏高级软件工程师,而是缺乏高素质的软件工程师,很多时候得过且过,编译程序通过没有问题就算完事。
从一名测试人的角度看,至少开发此功能的程序员没有对代码进行单元测试,开发团队内部也没有进行相应的代码审查,开发人员存在很大的问题,其所在团队对待产品的态度中也存在较大的问题。我所遇到的情况,研发人员开发一个功能(一般都没有太多的测试,审查),就交给测试人员来测试,测试发现问题,研发人员在进行修改,一般来回4~5遍测试才能够通过。
让我深恶痛绝的是,很多时候研发虽然有一份设计说明书,但真正开发时候,研发人员很做一部分修改,而修改后的东西并不进行相应的说明。不知道大家有没有遇到过这种情况,当多出出现这种问题时,我都会尽量的测试的更加细致一些,多提交一些bug,让你Y修改去,而且还会邪恶的提交几个说明不是特别清晰的BUG,让你Y的也找尝尝苦头
很多时候,非不能也,是不为也。大家都一种事不关己高高挂起的心态,做事没有一个诚挚的新,自然漏洞重重。
说到底,还是一种认识问题,一种个人素质问题。(PS:这里不是说自己怎么怎样,仅有感而发。当然,我所需要的情况也非大众情况,这里仅表达了一点自己的小想法)
提交BUG后,研发的同事将此方法的实现方法发过来,如下:
public void setObject(int parameterIndex, Object x) { setObject(parameterIndex,x); }
当时看到这方法,愣住了,继而无力的笑了,居然还有这样实现方法的。同时,研发那哥们又给我粘贴了另外一些方法,都是只有也该方法,其内部什么都没有实现
public void funcionName() { // TODO Auto-generated method stub }
有如此代码,开发的产品就可想而知。
这里不是要说,我公司的产品怎么样,而是由此引发了一点思考。
一名程序员,居然写出这样的程序,且流出来让他人使用,这不是一名合格的程序员的基本素质吧。
和同事讨论起这事,很多时候,现在并不缺乏高级软件工程师,而是缺乏高素质的软件工程师,很多时候得过且过,编译程序通过没有问题就算完事。
从一名测试人的角度看,至少开发此功能的程序员没有对代码进行单元测试,开发团队内部也没有进行相应的代码审查,开发人员存在很大的问题,其所在团队对待产品的态度中也存在较大的问题。我所遇到的情况,研发人员开发一个功能(一般都没有太多的测试,审查),就交给测试人员来测试,测试发现问题,研发人员在进行修改,一般来回4~5遍测试才能够通过。
让我深恶痛绝的是,很多时候研发虽然有一份设计说明书,但真正开发时候,研发人员很做一部分修改,而修改后的东西并不进行相应的说明。不知道大家有没有遇到过这种情况,当多出出现这种问题时,我都会尽量的测试的更加细致一些,多提交一些bug,让你Y修改去,而且还会邪恶的提交几个说明不是特别清晰的BUG,让你Y的也找尝尝苦头
很多时候,非不能也,是不为也。大家都一种事不关己高高挂起的心态,做事没有一个诚挚的新,自然漏洞重重。
说到底,还是一种认识问题,一种个人素质问题。(PS:这里不是说自己怎么怎样,仅有感而发。当然,我所需要的情况也非大众情况,这里仅表达了一点自己的小想法)
相关文章推荐
- 一个bug引发的思考 --- ASP.NET页面加载顺序讨论
- 表单提交后分页页面标签POST实现 —— 一个小小的bug引发的思考
- 一个bug引发对小程序运行原理的思考
- IOS学习笔记(12)——一个模态视图切换bug引发的思考
- 一个bug引发的哲学思考
- 一个 Bug 引发的思考(超赞的文章)
- 一个bug引发的思考 --- ASP.NET页面加载顺序讨论
- 一个Tahoma字体bug引发的思考—关于样式bug的分析流程
- 一个iOS bug引发的思考
- 一个字符串常量实验引发的思考
- WPF 布局心得 一个像素引发的问题和思考
- 一个由CountDownLatch引发的Bug
- 一个电风扇引发的思考
- [转载]经典搞笑:一个BUG引发的血案|为程序员打造的年终大片
- 一个贴子引发的对回调的思考
- 一个bug引发的“血案”
- 一个JavaScript问题引发的思考
- Vert.x,一个异步、可伸缩、并发应用框架引发的思考
- JS: 一个小例子引发的思考
- 一个PV操作题引发的思考,如何看待进程间同步、互斥