结对编程 第二阶段

一、实验目标
  1)体验敏捷开发中的两人合作。

  2)进一步提高个人编程技巧与实践。

二 、实验内容
  1)根据以下问题描述,练习结对编程(pair programming)实践;

  2)要求学生两人一组,自由组合。每组使用一台计算机,二人共同编码,完成实验要求。

  3)要求在结对编程工作期间,两人的角色至少切换 4 次;

  4)编程语言不限,版本不限。建议使用 Python 或 JAVA 进行编程。

三、组队情况:

  1、队名:WxWz

  2、各队员博客地址:3170701103 王旭(https://www.cnblogs.com/014wangxu/)

             3170701104 王振(https://www.cnblogs.com/wshu221/)

  3、课题及仓库:四则运算 https://www.gitHub.com/jdbcsy/yunsuan

四、实验内容:

1、代码规范:

代码规范化基本上有七大原则,体现在空行、空格、成对书写、缩进、对齐、代码行、注释七方面的书写规范上。

1)空行

空行起着分隔程序段落的作用。空行得体将使程序的布局更加清晰。空行不会浪费内存,虽然打印含有空行的程序会多消耗一些纸张,但是值得。

2)空格

关键字之后要留空格。像 const、case 等关键字之后至少要留一个空格,否则无法辨析关键字。函数名之后不要留空格,对于表达式比较长的 for 语句和 if 语句,为了紧凑起见,可以适当地去掉一些空格。但 for 和 if 后面紧跟的空格不可以删,其后面的语句可以根据语句的长度适当地去掉一些空格。

3)成对书写

成对的符号一定要成对书写,如 ()、{}。不要写完左括号然后写内容最后再补右括号,这样很容易漏掉右括号,尤其是写嵌套程序的时候。

4)缩进

缩进是通过键盘上的 Tab 键实现的,缩进可以使程序更有层次感。原则是:如果地位相等,则不需要缩进;如果属于某一个代码的内部代码就需要缩进。

5)对齐

对齐主要是针对大括号{}说的:

规则一:{}分别都要独占一行。互为一对的{}要位于同一列,并且与引用它们的语句左对齐。

规则二:{}之内的代码要向内缩进一个 Tab,且同一地位的要左对齐,地位不同的继续缩进。

6)代码行

规则一:一行代码只做一件事情,如只定义一个变量,或只写一条语句。这样的代码容易阅读,并且便于写注释。

规则二:if、else、for、while、do 等语句自占一行,执行语句不得紧跟其后。此外,非常重要的一点是,不论执行语句有多少行,就算只有一行也要加{},并且遵循对齐的原则,这样可以防止书写失误。

7)注释

C语言中一行注释一般采用//…,多行注释必须采用/*…*/。注释通常用于重要的代码行或段落提示。在一般情况下,源程序有效注释量必须在 20% 以上。虽然注释有助于理解代码,但注意不可过多地使用注释。


2、程序的总体设计(附图说明模块之间的关系)

经讨论后得出下面的程序流程图:

结对编程 第二阶段_第1张图片

 

 

 


3、程序结对编程过程(附图)及功能实现情况(附代码和图)

本次结对编程实验我们两人的交互如下:

第一次由王旭同学对代码进行了整体的规划与上传

代码网址:https://github.com/wanzghen1111/yunsuan/tree/master/sy

第二次由我添加了对错误更有效地处理并附带代码如下

修改之前:

结对编程 第二阶段_第2张图片

修改之后,对于做对了的题目保持不变,做错的题目将给出正确答案。

结对编程 第二阶段_第3张图片

 

 

代码如下:

结对编程 第二阶段_第4张图片

 

 第三次由我对运行界面进行了优化

一开始界面主菜单和题目同时存在,并且没有题目类型提示,不够美观和明显,所以我将界面主菜单和题目分开,并且标注了运算的题目类型。

 优化前:

结对编程 第二阶段_第5张图片

 优化后:

结对编程 第二阶段_第6张图片

 

 结对编程 第二阶段_第7张图片

 

 代码如下:

结对编程 第二阶段_第8张图片

 

 第四步由王旭同学对代码进行了检错与整理,详见王旭同学博客。

4、项目github地址(附图)

https://github.com/jdbcsy/yunsuan

结对编程 第二阶段_第9张图片

 

 

 

5、实验总结

本次实验给了我们一个平台可以合作编程,这是跟以前的编程是不同的,与他人同时编辑一个文档,可以提高我们的工作效率,毕竟有两个人来协同努力,两个人的努力不只是1+1=2的简单计算,两个人可以互补不足。同时结对编程相对于一个人编程,出现错误的几率更小,因为两个人的工作细致程度是一个人没法比的。通过这次实验也了解到托管的用法,可以将代码托管到GitHub上,方便别人查看和保管,有利于积累经验和保存成果。这次实验是一个全新的体验,给了我们一个学习的平台和方法,第一次相对的了解了结对编程。

 

你可能感兴趣的:(结对编程 第二阶段)