`
shaucle
  • 浏览: 21529 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

你到底结不结对?

阅读更多

 

  /**
 * first post on <st1:chsdate w:st="on" isrocdate="False" islunardate="False" day="24" month="11" year="2005">20051124</st1:chsdate>
 */ 
<o:p></o:p>

你到底结不结对<o:p></o:p>

话题:结对编程技术  <o:p></o:p>

定义:  <o:p></o:p>

结对编程就是两个人共用一台电脑编程。  <o:p></o:p>

这么简单?简单就用不着俺在下面哆嗦这么一大段了!  <o:p></o:p>

角色:  <o:p></o:p>

结对编程角色有Two:你是Driver,俺是Navigator缠缠绵绵…(俺狂吐@_@)  <o:p></o:p>

活动:  <o:p></o:p>

他们之间要共同:探讨设计方案,设计算法,编写程序代码,完成各项测试。  <o:p></o:p>

当然还可以共同吃饭,打球。(晕,少扯了)  <o:p></o:p>

效果:  <o:p></o:p>

先声明这些效果都是实践证明了的!你不承认?不承认就接着往下看,等着瞧!  <o:p></o:p>

       System.out.println(“  <o:p></o:p>

1.           质量++,  <o:p></o:p>

2.           时间/2,  <o:p></o:p>

3.           忠诚度++,  <o:p></o:p>

4.           信任与团队精神++,  <o:p></o:p>

5.           知识交流=100%,  <o:p></o:p>

6.           促进学习=true <o:p></o:p>

);  <o:p></o:p>

重定义:  <o:p></o:p>

结对编程技术是一种不需要增加多少投资就能大幅提高软件产品质量的手段。  <o:p></o:p>

有这么便宜的事么?当然有!说不定哪个PLMM哪天就主动要求跟俺“结对”了呢!(怎么了,做梦是人的本能)  <o:p></o:p>

七、八种激励效应:  <o:p></o:p>

刚才是谁不承认来着,是你吧,小样,过来。什么,你承认,,承认也得听俺gong():  <o:p></o:p>

1.          互相督促
使之更勤奋。如果俺表现得不出色的话,肯定要被对方给BS
使之更专心。知道你小子就想着去看什么NBA新闻或去收什么Email来着,嘿嘿,俺盯着你呢。
 <o:p></o:p>

2.         互相协商
必须承认人的智慧服从“分布式认识”规律,不然哪来的“三人行,必有俺徒”?
协商中得以发现一些极其复杂、看似无从着手的问题的解决方案。
任务越复杂,就越需要两个人的智慧。(别问俺为什么不是三个,俺会答不上来的。)
 <o:p></o:p>

3.          互相鼓励
“其实老板对结对编程有些误解。唉,俺只跟你说啊,刚才开会不敢讲。”
“就是嘛,下次大会讲,俺支持你。”
“我们也支持你。”大约有一个班的声音。
FT,又带着耳机去说话了…”

很多人都有想法,但又怕当众出丑或冒犯,结果许多赋有创意和忠实的想法都被扼杀了。现在不同了,因为我们每天都用“结对编程”。  <o:p></o:p>

4.         互相复查
很少有人主动做代码检查工作,最多由“好不知情”的检查员进行。
现在不同了,因为我们每天都用“结对编程”。(少打广告了…)
if(you.check(code)==false){
   
.check(you);
    System.out.println(
“哈哈…”);
}
 <o:p></o:p>

5.          互相纠错
下面几个突然不想写了,其实都很容易理解。不服?不服你写啊!!  <o:p></o:p>

6.          互相学习  <o:p></o:p>

7.          互相信任  <o:p></o:p>

8.          互相娱乐
这个是后来加上的第八条,据说这条还是得票率最高的。  <o:p></o:p>

目标:  <o:p></o:p>

System.out.println(“  <o:p></o:p>

1.           以高质量代码完成任务,  <o:p></o:p>

2.           不会因关键人才流失而造成重大损失,(几个人对系统各部分都了如指掌)  <o:p></o:p>

3.           让员工都开心,  <o:p></o:p>

4.           缩短对新人的培训时间,  <o:p></o:p>

5.           团队更团结,成员间沟通更有效率。  <o:p></o:p>

”);  <o:p></o:p>

这家伙真懒,什么注解都没留下。(不是写了一个么…)  <o:p></o:p>

实践与技巧:  <o:p></o:p>

1.           Driver留点时间去发现和纠正他自己的错误。
“来,把球传给小陈,小王站出来,你去挡差,

FT,真哆嗦,比直播NBA的那个老头还烦!”  <o:p></o:p>

2.           搭档闲着犯困,就把键盘交给他。
都累了怎么办?那就去下几部好片,哈哈
 <o:p></o:p>

3.           讲清自己的习惯。
“我不打中锋。”
“俺远投比较准。”
……遭到一群怀疑的眼光。
“其实俺投篮还可以啦,只是大一篮球考试的时候才连续
13罚不中而已嘛。”  <o:p></o:p>

4.           多说,多交谈。
“你小子传球啥!”“防守积极一点!”
当你们之间缺乏这种交流时,你们在场下郁闷的时间就多了。
 <o:p></o:p>

5.           TDD
不知道
TDD???你完了,你真的完了 <o:p></o:p>

6.           用指挥棒(就是铅笔什么的)来代替手指。
作为职业杀手,怎能在显示器上流下自己的指纹。
 <o:p></o:p>

7.           注意个人卫生,勤洗澡,多吃口香糖。
好耶,还可以吃口香糖,俺也要结对。
 <o:p></o:p>

结合方式:  <o:p></o:p>

下面选了那本书中的一小部分,先抄上来再说。  <o:p></o:p>

外向型-外向型
P骑士(憋着噪子装女高音):要是在这儿用上Decorator模式,这段代码就太棒了。
J骑士(装男低音)我可不这么想,这模式不能用在这儿。
观众们大笑。
P骑士:哦,骑士,你的理由不能接受,我就要用这个模式。  
观众们切切私语。  
J骑士:啊,my friend!我必须承认,你是一个心术不正胡说八道的恶棍。  
两“骑士”拔出“剑”来开始决斗。  <o:p></o:p>

结合方式有好几种,上面只是其中一种。  <o:p></o:p>

俺再打个比方,毕竟不能全部都抄袭撒。比如活跃一点的元素就喜欢“结对”,如OCl等,它们之间的结合而且总是能冒出不少火花(放出能量高)。而HeHr等比较“死板”一点的元素就喜欢“独干”。活跃一点的程序员总是很容易结对,优秀的程序员之间的交流总是非常活跃的,不是么?(大约一次/per30-60s。没话说?嗯啊也可以,别笑,就是这样!)  <o:p></o:p>

七个好习惯:  <o:p></o:p>

System.out.println(“  <o:p></o:p>

注意休息,适当放松,谦虚谨慎,戒骄戒躁,既要自信,又要虚心,交流,倾听,积极思考,积极参与,不卑不亢,以理服人。  <o:p></o:p>

”);  <o:p></o:p>

这些东东俺也不哆嗦了,就都列出来算了。  <o:p></o:p>

 <o:p></o:p>

就写这么多,说多了没意思,待会P俺的人更多  <o:p></o:p>

参考书目:<<结对编程技术>>(大部分都是抄的,不信你可去翻原书。)   <o:p></o:p>

看完了支持的话就回答俺:你到底结不结对?

分享到:
评论
3 楼 praguesky 2007-07-08  
谢谢`~
2 楼 shaucle 2007-01-02  
俺以前是理想主义者,(现在可能也是)

(以下摘自 读书小感,小议XP )
其实XP中有很多东东也不总是好用,如:
集体所有权:可能导致平庸的改动,而且责任不明显。
教练:有几个这样勤奋和优秀的教练呢?
客户:不仅很累,做的都是程序员不愿做的事,而且很大程度就是项目失败的替罪羊。
结对编程:有时安静还是比较好一点,而且有些人不喜欢。
等等。


个人认为XP应该重构的几个方面:
1         做计划时按项目复杂性作一定量的设计(分成子项目),最好不要一开始就编码。
2         迭代周期不一定要每次都短,解决问题才是最重要的。
3         当你持续重构时,应该怀疑一下你的设计了。
4         避免过早的将项目推入维护模式,起码要等项目基本成型,这可能是XP一大软肋。
5         不要强求结对编程和大家同处一室。
6         教练、客户不是一定需要的,要的话,责任也不一定要分得太明确。
7         集体所有权也不是一定的,可以通过团队的设计、评论来补充。
8         程序员有各自的测试是好事,但当项目较大时,仍然应有独立的QA团队。
9         TDD和预先设计是相互补充的。(再强调一次)
1 楼 lautsie 2006-12-31  
写得很不错啊,呵呵

不过事实上结对的还是很少的

相关推荐

    师徒结对一:红领巾抽出来有结吗?.doc

    师徒结对一:红领巾抽出来有结吗?.doc

    幼儿园师徒结对小结.doc

    幼儿园师徒结对小结.doc

    师徒结对小结.doc

    【师徒结对小结】 师徒结对是教育领域中一种常见的培养新手教师和提升教师专业能力的方式。在这个过程中,经验丰富的教师(师傅)与新手教师(徒弟)形成合作关系,通过相互学习和交流,帮助徒弟快速适应教学环境,...

    师徒结对帮扶小结.doc

    本文中,资深教师与新教师毕思杰结为师徒,通过一系列的教学交流和活动,展现了师徒结对帮扶的重要性和有效性。毕老师虽然年轻,但理论知识扎实,实践能力强,展现出强烈的求知欲和敬业精神。他积极主动地向师傅请教...

    师徒结对师傅小结.doc

    在【师徒结对师傅小结】中,师傅分享了在与徒弟史运红共同学习和成长的过程中的体会和感悟。首先,师傅强调了应对平常工作的从容态度。新手教师往往在面对教学工作时充满热情,但可能会遇到各种问题和挫折。师傅通过...

    师徒结对师傅小结总结.doc

    【师徒结对机制概述】 师徒结对是教育领域中一种有效的培养新手教师的方式,旨在通过资深教师的指导和帮助,加速新手教师的成长。在这个过程中,师傅(资深教师)和徒弟(新手教师)共同参与,形成互学互助的关系,...

    数学教师师徒结对活动小结.doc

    6. 反思与自我提升:徒弟在小结中对自己的教学进行了反思,认识到了自身的不足,如未坚持学习小组的运作,对生本教育的忽视等,并表达了对继续向师父学习的愿望,希望通过弥补过去失去的机会来提升自己的教学能力。...

    最新结对帮扶学校协议书学校结对共建协议书样本一最新模板word.docx

    最新结对帮扶学校协议书学校结对共建协议书样本一最新模板word.docx

    结对子方案.pdf

    由于提供的文件内容非常有限,且内容部分只包含了数字"7.5",这显然不足以提供关于“结对子方案”的详细知识点。不过,我会尝试根据标题“结对子方案.pdf”来构建相关的IT知识点,但请注意,由于缺乏具体的文件内容...

    体系转换中临时固结对多跨连续梁施工控制的影响

    这种方法操作简便,但忽略了临时固结和桥墩的影响,可能导致模型与实际情况不完全吻合,从而产生误差。 4. 工程实例分析 南水北调丹江口施工大桥是一座九跨一联的预应力混凝土变截面连续梁桥,采用悬臂浇注法施工。...

    留守儿童结对帮扶制度.doc

    例如,实施师生间的“一对一、结对子”模式,确保每个留守儿童都有固定的学习和生活伙伴,从而在学习上得到辅导,在生活中得到关心。 其次,帮扶教师的角色至关重要。他们不仅要在学期中定期走访留守儿童的家庭,...

    半导体二氧化锡异质结对胺气敏性能影响的研究进展.pdf

    文章“半导体二氧化锡异质结对胺气敏性能影响的研究进展”探讨了如何通过构建SnO2与其他材料的异质结来提升其气体敏感性能。 挥发性有机胺对环境和人体健康都有潜在的危害,因此,开发高灵敏度、高选择性的气体...

    2021最新幼儿园管理档案-班级结对子活动记录表.doc

    其中,【班级结对子活动】是一种常见的教育策略,旨在通过师徒结对的方式促进幼儿之间的互动学习和社交能力的培养。 活动记录表的设计通常包含以下几个关键部分: 1. **记录人**:负责记录活动详情的教师或工作...

    万名教师结对帮扶贫困学生活动方案.pdf

    该文档是关于“万名教师结对帮扶贫困学生活动方案”的详细规划,旨在根据宿州市教体局的指导意见,结合埇桥区教育扶贫政策,推动教师对贫困学生的全面关爱和援助。以下是活动方案的主要内容: 1. **帮扶对象**:...

    用友手册资料:月结参考手册.pdf

    而总账月结则包括月结检查和月结对账两个部分,月结检查确保所有账务处理完毕,月结对账则是确保总账和各相关模块间数据一致性。 三、成本月结与总账月结 成本月结在财务流程中非常重要,它涉及到成本的计算、分配...

    师徒结对子徒弟总结.rar

    "师徒结对子徒弟总结"这个压缩包文件可能是某次师徒结对项目结束后,徒弟对整个过程进行的系统性回顾和总结。 首先,我们要理解“师徒结对”这种模式的核心价值。在教育和IT实践相结合的背景下,它旨在通过面对面的...

    基于Java语言的20162322-2323结对编程设计源码

    该项目为20162322-2323结对编程设计的Java源码,总计包含53个文件,其中包括36个Java源文件、8个类文件、4个XML配置文件、2个数据文件,以及少量其他类型文件,如编辑器临时文件和Markdown描述文件。该项目聚焦于...

    基于Python语言的P4项目结对编程设计源码

    该项目为Python语言的P4项目结对编程设计源码,共包含27个文件,其中包括11个Markdown文档、7个Python源代码文件、4个P4配置文件、4个JSON数据文件以及1个PDF文档。

    电子功用-多结太阳能电池及其制备方法

    这种电池通过叠加多个不同的半导体结,利用各结对不同波长的太阳光进行吸收,从而提高能量转化效率。在本资料中,我们将深入探讨多结太阳能电池的原理、结构、制备工艺以及其在电子工业中的应用。 多结太阳能电池的...

Global site tag (gtag.js) - Google Analytics