结对编程总结by黄柏欣李斌

在十一国庆期间(当然,还有国庆之前的几天),我们进行了一个结对编程的项目。

对我受益良多,在伙伴面前发现自己的渺小,在知识面前,始终输给这浩瀚的海洋,及时发现了自己的不足,这次电梯项目,对我来说就相当于一个实际的项目。并且在一些逻辑方面并不是考虑的很严谨,最后的问题也是非常真实。还好,在伙伴的合作下,是我们的程序接近完美重要的一环。不仅提高了效率,也保证了程序编写的正确度。

最后就浅谈一下,我们对于结对编程的感受。

经验与教训:

 

一、结对编程的优势

我们认为,结对编程的优势主要就在于设计思路的共享,和我们互相为对方避免错误。总的来说,自己在编程时犯下的错误,有些尽管很简单,但却难以发现,而这些在另一个人眼中,却会十分明显。当然结对编程也有不适用的地方,比如其他课程的编程作业,需要我们每个人独立完成,就不能依赖同伴的帮助,还有就是一些十分传统的、规范的编程任务,比如写一段最常规的快排算法,此时如果有人在旁边,就纯粹是浪费时间,因为这些内容对我们而且太熟悉了,不需要有人在旁指导。

因为结对编程可以很大程度上提高编程效率,而且两人轮流编程,不会太过疲惫,因此十分适合敏捷开发。如果未来我们从事软件开发的工作,我们会十分乐于进行结对编程,因为这会极大的改善我们的编程体验,是编程不再那么枯燥,debug之路也不会那么恐怖。

比如在设计阶段,我们其中一个人想到采用策略模式来解决这个问题,采用一个接口作为抽象行为层。

另外一个人发现我们这些具体的算法类有一些公用行为,于是考虑用抽象类代替原来的接口作为抽象行为层,这样可以把那些公用行为上移到抽象层,大大减少了冗余代码,使设计变得更加优雅。

二、结对编程的劣势

结对编程之初,我们两个的配合还是有些不顺畅,使用IDE的习惯有差异,编码习惯有差异,甚至对某个词语的表达方式都存在差异,会影响到我们的效率。

正当我们相互磨合渐渐适应对方,我们的任务也基本结束了。

两个人一起编程难免出现意见不一致的现象,出现这种情况我们采取的方式是停止手头的工作,直到讨论清楚得出结论为止,有时候我们这样的讨论可能持续时间比较长,会影响到我们的生产力。

原文地址:https://www.cnblogs.com/hbxloveyuu/p/9755353.html

时间: 2024-10-25 21:39:17

结对编程总结by黄柏欣李斌的相关文章

结对编程—黄金点游戏WinForm单机版

本小游戏场景来自邹欣老师的<移山之道>一书: "阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫"黄金点"的游戏:N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金

结对编程——黄金点游戏

结对编程项目-黄金点游戏 一.项目描述:黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0-100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分.玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动. 现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下: 1.本作业

对于结对编程的一些感悟

软工课的第一次小作业是两人结对编程,使用JavaScript共同开发一个Game of Life网页游戏,游戏逻辑并不复杂:在一个无限延伸的网格中,每个网格住着一个存货状态随机的细胞,在一定规则下,一个细胞在下一代的生死取决于其周围细胞的数量.与以往的个人编程或团队开发不同,从编程实现到测试,再到最后的文档编写,都要通过两人结对来完成.通过作业实践,对结对编程有了更多的感受. 在我们开发过程中,两人分别承担驾驶员和领航员的角色,“驾驶员”负责具体的编码工作,“领航员”则负责检查,及时纠正代码中的

[原创]对结对编程的感受

本周出于老师作业的要求,本周体验了一下结对编程,刚开始还觉得这没什么稀奇,一样都是编程嘛,体验了之后才知道结对编程的优点. 结对编程,从字面上讲,就是两个人一起编程.而1+1=?这个问题一直是一个疑问,可以大于2,可以等于2,可以小于2,从这次编程经历看来,结对编程(至少是我们这次结对编程),这个式子的答案应该是大于2. 关于结对编程的许多优点和好处,在邹欣老师的博客中http://www.cnblogs.com/xinz/archive/2011/08/07/2130332.html都可以看到

结对编程-黄金点游戏之旅[四]

(游戏已上线,更多信息请戳底部链接▼) <--戳这个链接也会跳的哦, 了解游戏规则戳这里-->游戏规则 我的队友: 张波(进入博客请戳底部链接) 性格开朗,人很随和,不想写代码的时候都是他主动拉着我去写的,工作认真负责,有分歧的地方或者逻辑不顺的地方我们都会仔细讨论 主要负责写后台的业务逻辑,登陆.注册.开始游戏等小功能的后台代码 遵照代码规范.每次他写完后我都会做Code Review,虽然没有自动化测试,没有性能分析,但是我会单步调试,分析每一行代码的逻辑和作用 我: 李洋洋 主要负责前端

第十周(11.18-11.24)----结对编程----感悟

当开始接触到结对编程这个名词的时候,我很疑惑这是一个什么样的编程形式.当逐步深入读了邹欣老师<构建之法>第二版75页4.5节之后,我不禁想起了一个这样的画面.在准备考研复试阶段,我请了一位编程能力比我强人来指导我学习编程.当时做的是ACM水题,基础的原因,只能从水体开始练习.开始时我坐在电脑前,他坐在我旁边,他看着我进行编程.当遇到一个语法上的错误时,他记得清的就改正我,记不清的就叫我翻书,找到后又回来改代码.遇到算法上的问题的时候,他在纸上给我画一些草图帮我屡屡思路.我还记得那是一道大数相加

结对编程-电梯调度

这次编程和前几次不同,这次是结对编程,就是一个人编码,一个人负责审查,两个人编程过程中要交换角色,不能全程一个人编程而另一个人只审查.我的结对队员是张心语.他是一个活泼开朗的大男孩,也是一个文艺小青年.可能是考研的原因,或者是其它什么原因,这次结对效果不是太理想,我多次找过他但他说有事,所以整个结对编程基本就是我一人在整,就连最后拍的结对照片也是为了满足老师的要求.虽然没有达到老师期望的结果,但我依然收获很大.从一开始看的题目的无从下手,到与人交流,再到最后编码,成长了很多,编程能力也得到了进一

结对编程作业:四则运算

截止日期 2018年4月12日15:30 提交地址 https://github.com/eudaem/homework2 本次结对编程作业分为以下两种类型Core(计算核心)和UI(用户界面),每组任选一个完成,原则上两种类型题目各占一半 Core 像<构建之法>的人物阿超那样,写一个能自动生成小学四则运算题目并给出答案的命令行 "软件", 如果我们要把这个功能放到不同的环境中去(例如,命令行,Windows 图形界面程序,网页程序,手机App),就会碰到困难,因为目前代

结对编程-四则运算 第一周总结

结对编程-四则运算 第一周总结 小组成员 20172313 余坤澎 20172332 于欣月 20172326 康皓越 需求分析 可以生成不同种类的题目 根据用户的需求来生成不同的题目 计算时生成真分数和整数,且结果为分数形式输出 可以输出括号 可以判断用户的正确 设计思路 第一种 设计一个level1类,只负责加减 设计一个level2类,只负责乘除 设计一个level3类,只负责加减乘除 设计一个转化类,将上述的类生成的表达式转换成计算式 比对结果类 缺点 在将括号进行插入时出现问题,难以将