Pair Work:电梯调度算法的实现和测试 by 12061171 and 12061168

结队成员简介:

成员:牛强,学号12061171;刘文乔,学号120611683 我们之所以结对编程以完成所给课设要求,是因为我们互相了解彼此,能够更好更快地完成。下图是我们合作编程时的留影:

  牛强是一个思维活跃、工作积极,编程基础较强的人,但是他经常忽略一些细节问 题,导致他经常花费更多的时间用于代码的调试和改错;而刘文乔是一个考虑问题比较全面的人,可以较快地分析出问题所在,并能快速改正,但是编程能力较弱,在完成已分配任务时花的时间会比较多。而我们组成一个队伍,互补互助,不仅能够更好更快地完成项目,更能在这个过程中促进彼此个人能力的进步,增进友谊。

  在课堂上我们学习到了关于结对编程的知识,但是这些知识是空洞无力的。在我们真正开始结对编程的实践时,我们才印证了课堂上关于结对编程的内容。在我们看来:结对编程能很大程度上保证代码的质量,使程序更简洁、设计更合理、可能的漏洞更少。而且结对编程还可以大幅度削减开发所需的时间花费和知识储量,两个人都不需要有极高的造诣、只需平平的能力即可做到一个人苦心竭力才能做到的事。不仅如此,在解决困难和问题时通常能够找到更好更快的解决方式。

   但是结对编程的优点不仅仅限于这些。对于结对的两个人来说,如果他们能够互相激励、互相帮助,那么他们在合作中将收获快乐和友谊,而这些又会转而产生刺激使他们的个人能力得到提升。这些都是一个人独自完成时不可能得到的。

   但是显而易见,结对编程还有一些需要调和的矛盾。两个人的编程风格不同,而且大多说人喜欢独自工作,如果他们再不能及时交流,往往会导致团队的失败。不仅如此,即使两个人克服了这个矛盾,还是会出现其他的一些问题,比如说两个知识储备不同、动手能力的差异,这些都会耗费一定的时间去达成共识。而我们所做的就是在工作中尽量克服这些不足,并充分利用结对编程的优势更好更快地完成我们的项目。

  在我们设计代码的过程中,非常乐意使用一些语言特性和设计方法来改进自己的代码。比如说充分地利用面向对象语言的信息隐藏特性(information hiding)来完成对类和属性的封装,以实现对数据的保护,保证程序的安全性。而对于接口的设计(interface design)能够更规范地组织代码,并且能增强代码的重用性,在明确了功能之后,如何实现并不需要考虑,所以会更方便地设计整个代码的框架,提高开发效率。而对于松散耦合(loose coupling),我们设计的代码并没有很好地体现。因为在整个框架下我们并没有做太多的修改,所遵循的只有面向对象原则,严格划分各部分的功能和属性,使得某个模块除功能外的改变对其他模块几乎不产生影响。

时间: 2024-10-13 19:37:42

Pair Work:电梯调度算法的实现和测试 by 12061171 and 12061168的相关文章

结对项目:电梯调度算法的实现和测试——报告

一.编程人员 徐方宇.陈少杰 二.工作照片 三.结对编程优缺点 优点: 1. 程序员互相帮助,互相教对方,可以得到能力上的互补. 2. 可以让编程环境有效地贯彻Design. 3. 增强代码和产品质量,并有效的减少BUG. 4. 降低学习成本.一边编程,一边共享知识和经验,有效地在实践中进行学习. 5. 在编程中,相互讨论,可能更快更有效地解决问题. 缺点: 对于有不同习惯的编程人员,可以在起工作会产生麻烦,甚至矛盾. 两个人在一起工作可能会出现工作精力不能集中的情况.程序员可能会交谈一些与工作

结对项目:电梯调度算法的实现和测试

结对编程人员: 12061167林旭鹏 12061174李靖 TFS上Pairproject11 结对编程优点: (1)结对编程相对来说比较高效,一些基本功能可以分开来写unit在进行整合,核心算法可以进行讨论,选择效率比较好的哪一种算法. (2)两个人同时进行编程,不容易分神,集中程度相对一个人时更高,双方也可以互相监督.并且若有一个人实时对另一个人的代码进行实时监督,可以避免手滑打出来的小问题,这些小问题在调试时时很难找出来的,可以节约调试的时间.而且debug时,也可以让头脑比较清醒的人上

结对项目:电梯调度算法的实现与测试

结对编程人员:12061174 李靖 12061167 林旭鹏 文件位于TFS上的Pairproject11中 算法核心:两个关键---1.history direction变量 2电梯里面有没有人. 电梯初始的方向默认为向上,在每个tick时间点 电梯如果在底层,history direction为上,如果在顶层则为下. 电梯内没有人的时候,先遍历请求,如果有方向一致并且可以去到的楼层请求,则Reqstopat最近的. 若当前History dirction方向上,没有方向一致的楼层请求,则检

挑战--电梯调度算法的实现和测试

结对编程--电梯调度算法

1.需求分析: 实现电梯调度算法,预先输入乘坐电梯人数.每个人的起始楼层和到达楼层以及当前电梯所在楼层,电梯会根据算法依次将所有人员接入电梯并送至其重点楼层. 2.代码截图 3.约定的规范 使用Tab制表符 每行不超过100 {}另起一行 规范示例: 4.记录时间 命题讨论:1h 思路分析:1h 代码编写:24h 程序测试:2h 博客记录:1h 5.心得体会 结对编程可以通过自己的parterner来发现自己之前的不足,矫正错误 通过电梯调度算法,复习了数据结构和C语言的指针,结构体等

Pair Project:电梯控制程序

12061160刘垚鹏 & 12061166宋天舒 1.1结对编程的优缺点结对编程相对于个人编程有很多优点.首先,督促作用,在讨论过程中能够很快投入工作,为了不耽误对方时间,我们会尽快完成各自的任务:第二,节约时间,相互交流,能够更快的确定算法方案,比起一个人苦思冥想要来的快得多:第三,提高效率,一些简单的unit,一个人能够很简单的完成就可以分给不同的人去做:对于核心的unit,比如说此次项目电梯调度的算法部分,这是一个核心的部分,需要我们共同讨论,经过讨论后确定较优的方案再去实现:或者在遇到

1.8 小飞的电梯调度算法

题目:有一栋楼,现在设计一种电梯调度算法:电梯在一楼让大家上电梯,然后根据大家选择要到的楼层算出某一楼层i,电梯在i层停下让所有人下电梯,然后大家爬楼梯达到自己的楼层.请问电梯停在哪一层,可以使得这一次的所有乘客爬楼层之和最短? (一) 最直接最简单的方法就是直接枚举从第一层到最后一层,然后算出电梯停在哪一层会使得所有乘客爬楼层之和最短. 代码如下: int nPerson[]; //nPerson[i]表示到第i层的乘客的数目 int nFloor = 0, nMinFloor = 0; in

编程之美读书笔记1.8 - 小飞的电梯调度算法

http://blog.csdn.net/pipisorry/article/details/36688019 问题: 亚洲微软研究院所在的希格玛大厦一共有6部电梯.在高峰时间,每层都有人上下,电梯每层都停.实习生小飞常常会被每层都停的电梯弄的很不耐烦,于是他提出了这样一个办法: 由于楼层并不算太高,那么在繁忙的上下班时间,每次电梯从一层往上走时,我们只允许电梯停在其中的某一层.所有乘客从一楼上电梯,到达某层后,电梯停下来,所有乘客再从这里爬楼梯到自己的目的层.在一楼的时候,每个乘客选择自己的目

结对作业——电梯调度算法的实现与测试之需求分析与算法设计

结队成员:李宝全 & 黄一凡 李保全的博客首页:http://www.cnblogs.com/libaoquan/ cooding链接:https://coding.net/u/2013040101159/p/4elevator/git 4路电梯调度算法展示:http://ele.libq.ren/ 结对编程题目:电梯调度 现有一新建办公大厦,共有21层,共有四部电梯,所有电梯基本参数如下表所示: 电梯编号 可服务楼层 最大乘客数量 最大载重量 1 全部楼层 10 800KG 2 单层 10 8