都说程序员最讨厌看别人的代码了,总是觉得对方的代码写的凌乱不堪,怎么看都看不懂,还不如自己重新写一份。
最近刚刚接手一个项目,做二期开发,刚拿到项目,首先就碰到这个项目使用Maven做的,之前有没学过,一下子就有点烦了。再加上使用Maven导入后启动项目还报错,就更加怒不可遏,妈的你给我一个项目居然还跑不起来!好不容易利用周末了解了maven的一些基础,把pom.xml文件改动了一下,虽然启动时还是报错,不过是报另一个错误,试了一下localhost:8080/xxx,项目可以跑起来了!有页面显示!!!
高兴不久,在后台登入那里,明明我的账号和密码是和本机数据库对应的啊,就是登陆不了。我了个去,不是吧,这个项目连登陆都登陆不了,这么一个大Bug都没解决就好意思给我们开发二期????
此时的我已经快疯了。
。。。
。。。
突然,我想是不是数据库的问题,她连的是哪里的数据库呢,我检查了一下Hibernate.hbm.xml,没错是我本机的的,出于之前的开发经验,我习惯性地将改数据库连接作为导入项目的一步。
然后又想起了spring里的数据库连接池c3p0配置,检查一下,我去。。。练的是远程机的,于是我立马改为本机。
登录,此时界面有反应,表明验证成功,但是有来一个报错,admin的xxx字段不存在。。我去,果然,数据库中没有这个字段。
难道给我的数据库sql文件不是最新的???
好吧,我还是连远程机的吧,本以为远程机需要密码访问,结果一远程直接就进入了,还能进入mysql后台查看数据库,这酸爽。
接下来一切都好办了,项目终于可以正常开发。
毫无疑问我的这一次接手是及其不愉快的,但是这些不愉快都是自找的。
总结,如何愉快的接手一个项目:
首先你要由衷地认可对方的劳动,毕竟大家都是程序员,都知道开发码代码不易,熬夜加班等都是大家的日常,自己接手的这份代码都是别人的汗血。
其次,你要认识到,接手过来这个项目有bug,责任是在之前的开发人员,但是调试的责任,是你。
如果说自己写的代码是自个的孩子,那么接手别人的代码就是替别人照顾孩子,甚至可以说你就是他的继父,就算这个孩子多么淘气和不乖,你也要把他当做自己的孩子去对待,这孩子有错的地方纵然和他父亲有关,但现在你是他的父亲,教育他,是你的责任。同样,调试一份接手过来的代码,也是你的责任。
再者,把它当做一个学习的过程,别人开发的方式、使用的框架、插件都可能和自己习惯的不同,这时就去学吧,学完之后马上可以用到项目中,何乐为不为。
最后,相信对方的能力和责任心。毕竟对方曾经和你是一家公司的(甚至连职位都一样),经过同样门槛的面试,能力绝对不比你差;毕竟当初对方开发的时候也是有项目经理在监督的,不可能开发的很不负责任。所以,请相信对方,同时也相信对方的代码,有bug,先考虑自身的环境,不要轻易去改动对方的代码,这里特别注意要备份好对方的原始代码再在svn或者git上开发。
之所以有这么多的感想,很大程度上来源于这一段话,分享给大家~