结对编程的优势

程序编的不那么容易出BUG,而且代码也写得更为优雅和紧凑.关于结对编程,发现了一些新的受益之处。首先,它可以促进参与项目的程序员自身的提高,一对程序员工作的时候,水平较低的一方会潜移默化地受水平略高的程序员影响,学到一些新的东西。而水平高的一方同样因为不断地把自己的想法说出来而整理了...
结对编程的优势
其实结对编程做起来很简单也很有趣,找个水平差的不太远的程序员和自己配成一对。只用一台计算机,大家选一个人坐在键盘前面负责输入,另一个人坐在后面口述。两个人要不断的交流,频率不应低于一分钟一次。整个的设计思想由后面只动口不动手的人主导,而由操键盘的人做实现。由于人的思维速度是快于输入代码的速度的。那么观看的人可以有空闲的时间做额外的思考,观察代码写的有没有问题,结构有没有问题。如果程序员的经验积累足够,是很容易看出存在潜在问题的代码的,即表面上实现了功能,但实际上是一种糟糕的做法。这在XP(eXtreme Programming 极限编程)中被称为代码坏味道,在 Martin Fowler的《重构》一书中有详细的介绍。两个有经验的程序员同时在一起工作,看起来好像浪费了一个人的时间:但实际上的效果确实完成了更高质量的代码。程序编的不那么容易出BUG,而且代码也写得更为优雅和紧凑.关于结对编程,发现了一些新的受益之处。首先,它可以促进参与项目的程序员自身的提高,一对程序员工作的时候,水平较低的一方会潜移默化地受水平略高的程序员影响,学到一些新的东西。而水平高的一方同样因为不断地把自己的想法说出来而整理了自己的思路。其次,一定时间周期地打乱配对,让参与项目的人员相互转换位置,使得维护繁杂的文档变得不那么重要。大家分组打乱后,口头的交流很容易让所有人都熟悉每个模块,这样对于公司也很有好处,项目中万一有人离开,也不至于影响到整个项目。最后,开发过程变得更为有趣,任何人的交流变得很多,大家关系更为融洽。另外想补充一点的是,讲解XP的书籍上都没有提到,但是实际上却存在的一点:结对编程使得程序员被迫提高了工作效率。如果单独工作,在遇到困难的时候,并不是所有人都立刻积极地去解决问题,这时或许会上网和网友聊聊天,看看无关的网站等等。有可能因为工作的打断,大半天的时间都浪费了。看起来,程序员每天都在加班,实际有效工作时间往往还达不到6个小时。而结对编程有一种相互督促的作用,在一边工作疲惫状态不好使,另一边会起一个鼓励和激发斗志的作用。而且两个人共用一台电脑,略带私人性质的聊天活动都会很自觉地不去进行了。结果一天下来,新实验结对编程的程序员都会喊累,神经紧绷8个小时的工作不累才怪。从这个角度看,严格限制结对编程的程序员不准加班是合理的,实际上,开始每天甚至不必限制8小时工作,每天这样工作6小时队项目同样是非常高效的。当两个人不断的互换角色,以至于最后谁也记不清哪行代码是谁敲的;团队内循环的分组以至于分不清到底那个模块该谁负责;反而大家的感觉会不错。整个项目的代码是团队共有,而不再是个人作品了。

2016-05-17
mengvlog 阅读 9 次 更新于 2025-06-20 01:21:53 我来答关注问题0
  • 结对编程的优势在于:提升代码质量,通过两位程序员的共同努力,可以发现并修正更多潜在错误;促进知识共享,两位程序员可以相互学习对方的编程技巧和理解,加速知识积累;提供即时反馈,编码过程中可立即获取对方的反馈,有助于及时调整代码方向;增强团队协作,共同工作能够增进成员之间的沟通与理解,培养团队精神...

  • 结对编程的独特之处在于,两个程序员的组合往往能互补不足,他们的盲点和缺点相互抵消,形成强大且无与伦比的解决方案,这是其他软件工程方法难以比拟的优势。在编程中遇到棘手问题时,比如那种让人感到厌倦的难题,人们通常会寻求帮助,无论是网络资源还是专家指导。此时,不妨尝试一下结对编程,或许你会发...

  • (5)结对能提高生产力。一个人在开发的过程中将会出现一段疲劳、消极的时期。如果双人编程,则可以相互促进,当一方疲劳时,他们可以交换角色。他们将能保持强度(比一个人工作强)。(6)结对是一件有趣的事。

  • 程序编的不那么容易出BUG,而且代码也写得更为优雅和紧凑.关于结对编程,发现了一些新的受益之处。首先,它可以促进参与项目的程序员自身的提高,一对程序员工作的时候,水平较低的一方会潜移默化地受水平略高的程序员影响,学到一些新的东西。而水平高的一方同样因为不断地把自己的想法说出来而整理了...

  •  最爱yangwei120 “结对”是什么意思?

    具体来说,结对帮扶是以先进带动后进,优势带领劣势的一种优势群体帮助扶持相对弱势群体的形式和手段。可以是一对一,也可以...双结对 背景“双结对”活动是区委贯彻落实市委“高兴、放心、凝聚、覆盖”主题活动要求,切实开展先进性教育活动的重要载体和抓手。龙柏街道在推进“双结对”活动中,一方面认真做...

檬味博客在线解答立即免费咨询

编程相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部