结对编程

在近三周的Scrum实施过程中,我们采用了结对编程(Pair Programming, PP)的方式进行开发(添加新功能和修改Bug)。

 

PP让我看到了不同的思维过程。和别人一起编程,你能了解别人是如何分析问题、解决问题;你能看到别人是如何思考、如何把想法变成代码。自己写程序时总是试图把所有大的框架和架构整明白,然后再动手。可对于一个稍微复杂一些遗留系统,除非以前自己参与它的开发,不然很难一上来就能准确全面地理清它的架构。并且很多时候,如果你只是要修改某个bug或者添加一个小新功能,大的架构是没有多少指导意义的,真正能解决问题的是系统中的一些细节。和注重细节的(Concrete Thinker)同事结对编程,你就能体会到他是如何对待编程的。比如说需要向现有系统添加一个新功能,他考虑的不是Class A, B, C, D如何交互,架构如何设计,这个新功能就可以实现;而是这个新功能需要Function E, F, G,从Class A出发,实现E时需要哪些method,这些methods在哪些Class中有现成的,哪些只有类似的,哪些压根就没有,然后再修改或重构类似的、添加没有的来实现E;一次类推再实现F, G。有些人会觉得这些都是废话,编程不就是这么个流程嘛。可对于一个Abstract Thinker来说,这个流程就不是那么自然而然的发生,而是要刻意为之。

 

PP让我看到了不同的编程风格。和高手一起编程,我才发现coding原来可以如此的高效。高手们的秘诀有二:一是充分发掘开发工具的潜力。像我们用Visual Studio开发,高手会充分利用其提供的查询、重构、代码自动生成、快捷键等提高coding效率;二是自动化所有繁琐的事情。在开发过程中我们会经常遇到诸如需要copy文件、注册dll等繁琐易出错的纯体力劳动, 对于这些没技术含量的活儿,高手的做法就是写一脚本,将其自动化!快捷键、写脚本是高手必备技能。

 

PP其实是一个学习的过程。三人行必有我师,两人编程必有可学。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值