写点什么

结对编程

收录了 结对编程 频道下的 50 篇内容

结对编程简介

一个由聪明能干的开发者组成的敏捷团队正在努力完成交付。他们遇到了一些意料之外的缺陷,正在努力修复生产环境中发现的缺陷;前端开发的工作量比后端开发更大,因此当前端开发者挣扎着试图跟上进度时,后端开发者反而处于无所事事的状态。可能他们需要更新控制器系统,但是Brian是唯一一个能够看懂控制器代码的人,不幸的是他现在正在忙其他事情。这个场景是不是很熟悉?结对编程可以有效地解决这些问题并给这个煎熬中的团队带来更多好处。那么为什么很多团队不进行结对编程呢?

谈谈结对编程

结对编程(Pair programming)是一种编程模式,即两个程序员并排坐在一台电脑前,面对同一台显示器,并且一起工作。他们一起分析、设计、编码、编写测试用例、执行单元测试、执行集成测试,甚至一起写文档。基本上软件开发流程里的所有开发环节他们都需要一起肩并肩地、平等地、互补地进行开发工作。

成功实施结对编程

Jay Fields从实施的视角介绍了结对编程。如果你已经了解了结对编程的含义,那就应该读一下这篇文章,它可以为你成功实施结对编程提供向导。Jay在文章中进行了面面俱到的描述,从如何调整座位,到有效的训练技巧,再到如何避免人们常犯的错误。

为什么结对编程并不那么受欢迎?

结对编程是极限编程的核心技术之一,并且实践证明,其能够在知识共享及代码质量方面提高效率,但作为一项实践,并未被充分加以利用。

文章:成功实施结对编程

Jay Fields从实施的视角介绍了结对编程。如果你已经了解了结对编程的含义,那就应该读一下这篇文章,它可以为你成功实施结对编程提供向导。Jay在文章中进行了面面俱到的描述,从如何调整座位,到有效的训练技巧,再到如何避免人们常犯的错误。直接点击阅读完整文章

半年实现快速迭代 触宝通过结对编程完成高质量软件开发
半年实现快速迭代 触宝通过结对编程完成高质量软件开发

结对编程真的像传说中那样不具有可操作性吗?什么样的团队适合结对编程?结对编程会为企业与个人带来怎样的改变?

结对编程 vs. 代码复查

结对编程、代码复查、鼓励知识共享,这些都可以有助于提升软件质量。当敏捷 vs. 精益, XP vs. Scrum,vi vs. Emacs的争论渐渐消隐,开发人员又开始对结对编程和代码审查的价值所在展开了争论。Theodore Nguyen-Cao在他的文章中将代码复查者比作鸡,结对编程者比作猪。

远程结对编程实战:看看别人是怎么做的

在进行远程工作时,使用结对编程方式能够有效地增进开发者之间的互动,并促进团队的良好关系。它不仅能够促进信息的流动,还能够防止开发者注意力分散的现象。你可以多尝试一下各种工具,以找到一种能够适合你进行远程结对的方式。结对编程是一种耗费精力而且缓慢的过程,有一些工作是你更愿意自己完成,而不是靠结对实现的。而在分布式团队中进行结对时,会自然地浮现出同理心与无私的特质。阅读本文以学习他人在远程结对方面的经验。

结对编程如何才能真正起作用

Stuart Wray撰写了一篇文章,在其中他分析了结对编程在团队中如何才能真正起作用,并且指出了四种机制,应用它们可以提高结对编程的效力,另外他还指出为什么结对编程会产出更高质量的产品。

结对编程的经济价值论

“究竟为什么我们要使用两个人来同时做同一件事情呢?”这往往是初次听说结对编程的人的第一反应。实际上,他们觉得结对编程使写代码的成本翻了一倍。Dave Nicollete用数字说话,告诉大家结对编程是如何省钱,而不是浪费钱的。

观点:结对编程并不适合所有人

最近几年,结对编程仍旧是最具争议的实践之一。支持者们不吝赞美之词,但是即使不少支持者都不得不承认他们自己公司真正结对编程都困难重重。为什么?Obie Fernandez给出了10个可能的原因。

技师的结对编程之旅

Corey Haines最近忙于他美国中西部的“结对编程之旅”。在这三个星期创新的旅程中,Haines上传了很多他途中的访问,包括了很多在他和Dave Chemlimsky,Brian Marick,Bob Martin大叔等人的家中结对编程时获得的有关结对编程、自动化测试、以及演化成软件工匠的独特见解。

结对编程成为主流,但反响冷淡

华尔街日报开始注意到越来越多的技术公司在实践结对编程,并在题为“计算机程序员在共享中学到深刻教训”的文章中发表了自己的看法。

敏捷咨询师许晓斌指出结对编程顺利推行的四个原因

敏捷咨询师、持续集成专家许晓斌指出了结对编程顺利推行的四个原因:直接管理者的支持、少数的 Early Adopter 及 Coach、代码基的大小、适当的强迫力及奖励;并且再次强调切切实实动手实践的重要性。

为什么结对编程很难实施

结对编程有助于提高软件质量和加强团队成员合作,但是却很难实施。这篇新闻描述了结对编程难以实施的原因,以及如何在你们团队中找到好的结对编程实践。

结对编程:肩并肩还是面对面

结对编程是一门敏捷软件开发的技术,其目的是让两个开发人员共同在同一个工作站上工作。关于结对编程所带来的好处已广为流传,相应的技术和方法也得到了广泛实践。然而,在进行结对编程时,最好的安排座位的方法又是怎样的呢?

如何通过结对编程进行高质量的软件开发
如何通过结对编程进行高质量的软件开发

本次分享结合触宝的主力产品触宝电话的敏捷开发实践,介绍移动互联网公司如何能够利用结对编程的方式进行高质量的软件研发。

通过测试驱动开发和结对编程提高生产水平

“测试驱动开发”和“结对编程”是最著名的两个敏捷实践,然而许多敏捷团队并没有采用。通常大家找借口说“太忙”,没时间采用测试驱动开发和结对编程这样的实践;实际上,他们的意思是追求高质量的代码会降低生产效率。在这里,Mike Hill解释了这种逻辑有多么错误。

热点讨论:结对编程的重要性

徐昊近日发起了一场关于结对编程的讨论。作为XP推荐的最佳实践,结对编程早已为人们熟知,并且也是所有XP实践中争议最大的一个。但徐昊认为结对编程最直接而又最根本的目的之一在于促进了设计的简洁。

当结对编程不再有效时

从概念上讲,结对编程与字面意思基本一致。两名工程师在同一个代码库上工作,完成同一个任务。传统上,这最多只使用一台机器。如今,情况可能会变得更加微妙,尤其是远程工作如此流行。不过,无论设置如何,以下情况都是正确的:

结对编程专题_资料-InfoQ中文网