结对编程第一阶段

1)查阅相关资料加深对敏捷开发和结对编程的理解;

  敏捷开发:以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。敏捷开发五大优点:1. 精确要求,精准成果。2. 质量有保障。3. 客户合作胜过合同谈判。4. 投资回报率高。5. 较高的速度是敏捷开发最显著。

  结对编程是一种敏捷软件开发的方法,两个程序员在一个计算机上共同工作。一个人输入代码,而另一个人审查他输入的每一行代码。输入代码的人称作驾驶员,审查代码的人称作观察员(或导航员)。两个程序员经常互换角色。在结对编程中,观察员同时考虑工作的战略性方向,提出改进的意见,或将来可能出现的问题以便处理。这样使得驾驶者可以集中全部注意力在完成当前任务的“战术”方面。观察员当作安全网和指南。结对编程对开发程序有很多好处。比如增加纪律性,写出更好的代码等。

  但是两个人在一起工作可能会出现工作精力不能集中的情况。程序员可能会交谈-些与工作无关的事情,反而分散注意力,导致效率比单人更为低下。还有,每个人都有自己的代码风格,在细节上总是有一些细小的差异,比如“{“的位置,变量的命名等,这些细小的差异使得我们在看对方编程的时候感觉很别扭,因为习惯了自己的编程格式。所以在理解对方的代码时总是要花额外的时间,有些问题也不能及时的发现。再加上我们两人对于一些问题的看法有时存在分歧,有的我认为重要的他认为无所谓,他认为不合理的我认为可以,这些分歧也会导致我们结对编程的效率降低。

2)组队情况,各队博客地址,github仓库地址,所选择的课题;

所选课题   四则运算
博客地址       
杨琛 (https://www.cnblogs.com/yc123/)

张建生(https://www.cnblogs.com/zjs123/)

仓库地址   https://github.com/yangchen-6/test

3)针对课题查阅的资料,对课题的理解;

问题描述:

  开发一个自动生成小学四则运算题目的命令行 “软件”。实现 输入你要出题的个数,随机产生四则运算,然后用户回答,并且进行打分。

  规则:用随机数实现100以内的加、减、乘、除运算,其中和与积不能超过100,差不为负(即须大减小),商不为小数或分数(即必须整除)。要求总计输出10个运算式,每输出一个运   算式,等待输入结果,然后进行对错判断并输出。最后输出统计答对的题数与分。

  通过对学生计算错误的类型和成因进行分析研究,寻找降低学生计算错误的策略,在实践教学中进行检验,验证策略的可行性。从而提高学生的计算能力,提高计算准确率,为学生顺利学习数学知识,持续发展奠定基础。而且,教师通过运用研究所得的策略,在今后的课堂教学中能少走弯路,充分发挥出。计算是重要的数学应用技能。学生的数学思维在系统的计算教学中能够得到充分的发脱。计算有利于形成稳定的心理和良好的习惯。无论数学习还是解决实际问题计算结果都应该正确。这就要求学生具有认真、 负责任的态度。

4)二个人商量后,采用开发平台和技术工具

  本次课题语言选用c语言,利用Dev-C++进行编写。在github上进行代码的交互。
5)其他,如二人讨论的记录

  通过交流讨论初步实现了建立仓库,代码的编写也初步完成,但存在着一点小问题,因此接下来的工作是对代码的完善。

  

原文地址:https://www.cnblogs.com/yc123/p/12530934.html

时间: 2024-10-03 16:40:09

结对编程第一阶段的相关文章

实验二:结对编程 第一阶段

一.实验目标: 1)体验敏捷开发中的两人合作. 2)进一步提高个人编程技巧与实践. 二 .实验内容: 1)根据以下问题描述,练习结对编程(pair programming)实践: 2)要求学生两人一组,自由组合.每组使用一台计算机,二人共同编码,完成实验要求. 3)要求在结对编程工作期间,两人的角色至少切换 4 次: 4)编程语言不限,版本不限.建议使用 Python 或 JAVA 进行编程. 三.问题描述 四则运算:开发一个自动生成小学四则运算题目的命令行 “软件”.实现 输入你要出题的个数,

实验二 结对编程第一阶段

结对编程:第一阶段 ***一.实验目标:*** 1)体验敏捷开发中的两人合作. 2)进一步提高个人编程技巧与实践. ***二 .实验内容:*** 1)根据以下问题描述,练习结对编程(pair programming)实践: 2)要求学生两人一组,自由组合.每组使用一台计算机,二人共同编码,完成实验要求. 3)要求在结对编程工作期间,两人的角色至少切换 4 次: 4)编程语言不限,版本不限.建议使用 Python 或 JAVA 进行编程. ***三.第一阶段:*** ***1) 组队:*** 我的

结对编程 第一阶段

1)查阅相关资料加深对敏捷开发和结对编程的理解: 敏捷开发:敏捷开发采用增量和迭代的开发过程,强调团队紧密发协作,能够有效应对快速变化需求,快速交付高质量的软件,是一种新型软件开发方法,相对于理论,更基于实践.敏捷开发更注重适应而非预测,因为需求是不可预测的,所以软件开发应该是一个自适应的跟踪过程,在敏捷开发的过程中,把整个开发过程划分为若干个更小的迭代,每一个迭代周期称为一个冲刺,是一个小的瀑布模型,包括需求分析.设计.实现和测试等活动,结束时都要生成一个稳定和被验证过的软件版本.比于传统的由

实验二结对编程 第一阶段

一.实验目标: 1)体验敏捷开发中的两人合作. 2)进一步提高个人编程技巧与实践. 二 .实验内容: 1)根据以下问题描述,练习结对编程(pair programming)实践: 2)要求学生两人一组,自由组合.每组使用一台计算机,二人共同编码,完成实验要求. 3)要求在结对编程工作期间,两人的角色至少切换 4 次: 4)编程语言不限,版本不限.建议使用 Python 或 JAVA 进行编程. 三 .问题描述: 我选择的问题是四则运算,具体要求如下: 开发一个自动生成小学四则运算题目的命令行 “

实验二 结对编程 第一阶段

一.实验目标: 1)体验敏捷开发中的两人合作. 2)进一步提高个人编程技巧与实践. 二 .实验内容 1)根据以下问题描述,练习结对编程(pair programming)实践: 2)要求学生两人一组,自由组合.每组使用一台计算机,二人共同编码,完成实验要求. 3)要求在结对编程工作期间,两人的角色至少切换 4 次: 4)编程语言不限,版本不限.建议使用 Python 或 JAVA 进行编程. 三.实验过程 1)查阅相关资料加深对敏捷开发和结对编程的理解: 敏捷开发:敏捷开发是一种从1990年代开

实验二 结对编程(阶段一)

实验记录—第一阶段 自我学习Github的相关知识的记录: https:////www.cnblogs.com/Incoming22/p/12419553.html 一.查阅资料    ?? 查阅相关资料加深对敏捷开发的和结对编程的理解: 1.敏捷开发 (1)概念: 敏捷开发以用户的需求进化为核心,采用迭代.循序渐进的方法进行软件开发.在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视.可集成和可运行使用的特征.换言之,就是把一个大项目分为多个相互联系,但也

面向对象编程第一阶段总结

oo到目前为止也算是结束了第一个阶段,作为一个在本学期开学之前一行JAVA代码也没写过的菜鸡,这几周过得真的很艰难...一切都是从零开始摸索,全靠查资料和翻书自学orz 在这次的课程总结中,因为电梯部分的作业更加困难,我出现的问题也较多,所以主要只对第二三次作业进行分析. 第二次作业--傻瓜电梯 一.程序分析 二.个人反思 拿到第二次作业之后,当时整个人是毫无头绪的,本来是想通过画出逻辑关系类图先理清思路,但是冥思苦想了一个下午还是不太能理解课件所给出的的设计建议,于是决定按照自己的想法进行尝试

20165322 结对编程-四则运算 阶段总结

结队编程-四则运算 阶段总结 学习笔记 中缀表达式转换为后缀表达式 如果遇到数字,我们就直接将其输出. 如果遇到非数字时,若栈为空或者该符号为左括号或者栈顶元素为括号,直接入栈. 如果遇到一个右括号,持续出栈并输出符号,直到栈顶元素为左括号,然后将左括号出栈(注意,左括号只出栈,不输出),右括号不入栈. 如果遇到运算符号且栈非空,查看栈顶元素,如果栈顶元素的运算优先级大于或者等于该运算符号,则持续出栈,直到栈顶元素优先级小于该运算符.最后将该元素入栈. 如果我们读到了输入的末尾,则将栈中所有元素

结对编程(阶段一)

一.实验目标 1)体验敏捷开发中的两人合作. 2)进一步提高个人编程技巧与实践. 二 .实验内容 1)根据以下问题描述,练习结对编程(pair programming)实践: 2)要求学生两人一组,自由组合.每组使用一台计算机,二人共同编码,完成实验要求. 3)要求在结对编程工作期间,两人的角色至少切换 4 次: 4)编程语言不限,版本不限.建议使用 Python 或 JAVA 进行编程. 三.问题描述 生命游戏 生命游戏是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机,它包括一个二