2、编程中的协作与测试驱动开发实践

编程中的协作与测试驱动开发实践

1. 编程协作:结对编程

1.1 结对编程的起源与背景

在早期的编程工作中,为了满足电视广播软件的严格时间要求,常常需要长时间工作。例如,在临近截止日期时,会和朋友 Rui 一起通宵工作,累了就在桌子下轮流休息。当时虽然有类似结对工作的经历,但并未意识到这与真正的结对编程有很大区别。后来进入更规范的大公司,发现传统的代码审查方式存在反馈不及时的问题,而结对编程能够尽早引入反馈,让我们更快地做出反应。

1.2 什么是结对编程

结对编程是一种有纪律的软件开发方法,它为每个成员分配特定的角色和职责,定义角色切换策略,并提倡适当休息以避免成员过度疲劳。其核心是缩短编写代码时的反馈循环,在编写代码的过程中更容易进行修改。通过与无偏见的同行实时讨论设计选择,可以验证想法。当有额外的人在编写代码时进行审查,反馈循环可以缩短到几秒,反馈越快,就越能快速得到高质量的解决方案。

1.3 结对编程的角色

在结对编程中,成员轮流担任以下角色:
- Driver(驾驶员) :负责实际的编码工作,如打字、移动鼠标等。
- Navigator(导航员) :负责审查驾驶员的工作,从战略层面审视代码,并不断提出问题,例如:
- 这段代码如何与其他部分集成?
- 这个实现是否会导致其他地方需要修改?
- 我们能否更好地设计这个程序?
- 是否存在意外的错误?

需要注意的是,如果处于权力、权威或资深地位,要确保搭档在结对过程中有良好的体验,避免利用权力强行做决策

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值