有位朋友说他最近失眠严重,都是因为接手了两个老项目,情况如下(我整理了聊天记录):
我最近接到两个有点坑的 VS 旧项目,之前一直是接触 Qt ,没有接触过 VC++ 和 MFC 库,感觉有些吃力。
现在好不容易解了一个旧项目的 BUG ,但是另一个更恐怖,整个项目只有我一个人,什么也不懂,正在慢慢摸索。
这个老项目是好几年前的,原来的开发人员都离职了,也没什么文档,只有代码,代码中用了好多库, poco 、 boost 、 thrift 等等,还用了 Python 混编……这些东西我以前都没接触过,看起代码来云里雾里,心里没什么底。
关键是我看不懂的代码和逻辑,也无处能问——老同事离职了,现在的同事,没有一个了解这些代码的。我经常一脸无助+懵逼,心里压力很大,都开始吃不消了。
经理给的时间很紧,一直在催我,导致我神经一直在绷紧状,总感觉活在恐惧中,所以最近失眠严重……
这样的状态,认真负责的你,可曾经历过吗?有没有想过怎样才能愉快地和老项目相处?
开发者的老项目宿命
说实话,作为开发者,我们都讨厌接手老项目,可是,开发者的宿命就是:你别无选择,终归要和一个老项目相爱相杀。
包括我自己,做开发十多年,可以说有八年都在和老项目鏖战!从 2015 年到现在,都在和有十几年历史的老项目卿卿我我!
时常会有奔溃的赶脚啊!
然而我们真的不能不管老项目吗?
答案是:不能!不能!不能!
原因很简单:一个项目,一旦发布上线,交付使用,就会成为老项目,但是它的声明周期却不会结束,紧接着就是修复 Bug 、添加功能、性能优化等等。
所以,所有的新项目,终归都会成为老项目!
所以,从这个角度上讲,即便你从头开始做了一个新项目,做着做着就成了老项目。
我 2009 年时从头开始做一个智能机顶盒的项目,做着做着就到了 2014 年,新项目就变成了老项目,人员来来去去,部分代码就不可维护了。有一次招募一