混日子的老程序员感受结对编程的威力【工作效率狂提高】
2011-01-30 00:19 通用C#系统架构 阅读(6573) 评论(32) 编辑 收藏 举报其实对我这样的老程序员来讲往往会有懒惰的一面,毕竟写10来年程序也有些累了,很多时候能拖就拖、能不写就不写、能购买就购买,真的一天又一天的高度紧张的状态下完成N多工作也有些不实际了。
最近在北京的中国残疾人联合会写一个项目,是给众多聋人残疾人朋友推出一个与春节联欢晚会同步播出文字直播的一个项目,方便聋人朋友可以一遍看视频一遍能看到配套的文字直播信息,连续写了3周的的程序了,充分感受到了结对编程的力量。
在我还没来之前,这边有一个程序员写代码也写了不少功能,我被公司派过来后,利用了1周时间,把所有的程序都整理了一遍,使得代码变得更规范了,这是第一个相对明显的提高,就是代码质量提高得很明显了,思路也很严谨了,将来有更多重复利用的价值、别人也好维护了。
其次,把代码重新整理的同时,也采取了分工职责明确的原则,把代码按分工分开了若干个小工程,代码职责都很明确了,客户有任何需求上的变化都可以及时经得起折腾,其实客户的需求是往往会变化不固定的,因为客户也不知道自己想要啥,只能是做出来后才会有更多的灵感,来了灵感后又 会有更进一步的需求,所以这3周来,需求一直在变,而且变得很快,几乎是3-4天就需求会变一次,做好一个功能后,又会冒出另外一个功能,甚至一个需求会有翻天覆地的变化,只有我们的程序架构合理,才能经得起客户的需求。
由于这个项目很紧急每天的工作安排都很紧急,几乎我每做好一个功能,客户的程序员都会跟我确认一次,仔细阅读一下写好的代码,功能也测试一遍,其实自己找自己的错误是很难,而且也没耐心仔细阅读自己写好的代码,这时结对编程发挥了很大的威力,另外一个人确认的过程中会发现很多小问题,毕竟另外一个人的思路会不一样,在确认的过程中很多问题都会暴露出来。
由于人家天天盯着功能是否对,也不好意思偷懒,几乎不看新闻也少写博客很少聊QQ,怕人家看到没在好好工作因为人家每半天就问一下项目进展如何了?若我不好好工作,他也不好向他的上级领导汇报,所以只能天天盯着我,虽然被天天死盯的滋味不好受,但是这些天的工作效率、工作质量、工作成果相比之下,真的是很明显,至少工作效率是提高1倍是有的。
1人1台电脑并不是一件好事情,其实2人才有1台电脑也不是坏事,结对编程的确比1个人的工作效率高很多,毕竟人人不是老板,打工的都有消极的一面,过一天算一天,拿一天工资算一天工资的心态比较多一些,结对编程的确能解决这种混日子的问题。
碰上工作仔细认真的客户想偷懒都难,每完成一个功能,甲方的程序员都会测试一遍,验证一遍,代码注释等都检查一遍,不得不工作更加仔细认真,少让人家找出几个错误,避免丢人丢面子,这3周虽然压力很大,但是也很有成就感,工作成果也很明显,也需要感谢甲方程序员的工作努力、工作仔细认真。
一个人写程序又枯燥又无味、又无乐趣,当有人分享,有人交流,有人认可,有人探讨时工作也就不会那么无趣了,其实2个人结对编程真的比一个人埋头苦干有乐趣很多,最起码多了一个伴,多了一个能跟你有沟通的人。
这3周是亲信体验了一下结对编程的威力,不错,值得推广。