20172325『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结
20172325『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结
结对伙伴
- 学号:20172306
- 姓名:刘辰
- 在这次项目的完成过程中刘辰同学付出了很多,在代码的实践上完成的很出色,在技术上提供了很多帮助。但是不足之处还是在于和结对伙伴沟通较少,使我不能准确的把握进程以及他的设计思路。
小组结对编程照片

小组成员感想
- 邓煜坤:
(1)首先要说的是,在这个项目的完成过程中,我在节奏的掌控方面没有做的很好,导致时间过于紧张,有些部分没有顺利完成,没有做到最好。
(2)在收获上面有较多的发现,首先我知道了在完成一个项目之前需要做的准备过程,包括类图的设计,时间的预估等,每一步都代表着精细的设计过程,体现了编程的核心思想;
(3)其次,在整个项目的完成过程中,对于知识点的串联,新知识的及时运用,旧知识的深度钻研,都使我受益匪浅,锻炼了编程的能力;
(4)同时,在项目的修复过程中,反复的推敲每一个步骤,在每一个方法的运用上,给了我极大地感触,在编程的逻辑思维上得到的锻炼;
(5)最后,与结对伙伴的合作过程中,我体会到合作的重要性,在未来我们将面临大量的程序设计,这就需要我们学会如何与人合作,提高编程效率,促进知识的交流。 - 刘辰:
(1)首先我觉得第一次的结对编程对于我和他来说都是一个很具挑战性的内容,我们两个的基础都不是很好,但是可以做到这,我还是很有成就感的,也觉得我的伙伴真的也很棒。
(2)在为期三周的编程中,其实我也应该有个反思,就是因为很多事情的堆积,我没有花大量的时间去更加用心的实践,我觉得如果我们再多花些时间,一定会更好的。
(3)在这次的编程中,我遇到问题会上网找一些用法和解决方案,我觉得在这个过程中自己学到了很多,也掌握了一些以前不知道的东西。
(4)对于最开始的阶段,我们两个都很拖沓,而且确实缺少很多的沟通,所以以后的结对项目,我会更积极些,争取做得更好。
进度回顾
已完成部分
- 生成题目,划分了等级,能够生成指定数量的题目;
- 能够将实现带分数的题目生成、转换和计算;
- 能够正确的将中缀表达式转换成后缀表达式;
- 能够对后缀表达式进行计算;
- Test文件中能够将以上部分结合在一起,完成整改过程;
- 对UML类图进行了修改和完善,使其能够准确的体现整个项目的思路和概念。
未完成部分
- 在后缀表达式计算的部分还存在BUG,在某次计算中可能得不到计算结果;
- 因为BUG还没有修复好,Junit测试也就还没有能够完成;
- 对正确率的统计还没有完成;
- 还没有实现写入文件。
项目UML类图

PSP
| PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
| Planning | 计划 | 60 | 70 |
| Estimate | 估计这个任务需要多少时间 | 60 | 60 |
| Development | 开发 | 1680 | 2100 |
| Analysis | 需求分析 (包括学习新技术) | 30 | 45 |
| Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 30 | 20 |
| Design UML | 设计项目UML类图 | 120 | 100 |
| Coding | 具体编码 | 180 | 720 |
| Code Review | 代码复审 | 180 | 120 |
| Test | 测试(自我测试,修改代码,提交修改) | 120 | 180 |
| Size Measurement | 计算工作量(实际时间) | 30 | 60 |
| Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 60 | 60 |
| 合计 | 2550 | 3535 |
测试过程中遇到的困难及解决方法
- 问题一:在编写后缀表达式的计算时,我定义的变量为一个字符串,也就是String类型,但是,中缀转后缀的结果是一个数组,于是在Test的结合上出现了问题。

- 问题一解决方法:在这个问题上首先我想到的是运用利用空格将每个元素连起来,如下图,

但是后来发现行不通,发现是在实践时过于依赖上面的格式,每个程序都有自己的一套规则,需要根据实际情况作出相应的改变,于是我重新声明了一个字符串,将数组里的元素赋值给这个字符串,然后在Test里添加这个字符串,于是成功了。
相关代码截图
· 生成题目部分


· 能够加入真分数


· 中缀表达式转为后缀表达式


· 后缀表达式的计算


· Test类的完成与运行

个人贡献度划分
我认为我们的贡献度划分是“ 50% :50% ” ;我们有两个成员,然后任务分配也比较容易,必做部分有四个,我们一人两个部分,因为每一个部分的完成都需要投入时间和精力,所以我认为没有难易之分,五五开,而且在Test的编写过程中我们进行了很多的讨论,并且一起对问题的发现与解决景象了努力,所以团结就是力量。
项目码云连接
参考连接
结对编程项目-四则运算
结对编程和两人合作
用java实现四则运算(这篇博客给了我们小组很大的帮助,在项目进行初期发挥了极大作用)
逆波兰表示法
调度场算法
20172325『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结的更多相关文章
- 2017-2018-2 1723 『Java程序设计』课程 结对编程练习_四则运算第三周总结
相关测试过程截图 测试了由中缀表达式转后缀表达式的Junit测试,分别进行了整数的和分数的,测试成功截图 由于生成问题和计算问题中,问题都是随机产生的,暂时不会进行Junit测试,故没有进行,但应是正 ...
- 20172325『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结
20172325『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结 结对伙伴 学号:20172306 姓名:刘辰 结对伙伴博客链接 刘辰同学对编程的积极程度很高,并且在编程能力上很不错,有 ...
- 2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算
2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算 经过第一阶段的学习,同学们已经熟悉了这门语言基本的用法.在一次又一次对着电脑编写并提交代码,进行练习的时候,有没有觉 ...
- 2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周
2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周 博客要求 组内同学需各自发表博客 博客中需包含以下内容: 相关过程截图 关键代码解释 遇到的困难及解决 ...
- 2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算_第三周
2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算 组队成员: 仇夏 学号: 20172310 博客地址: @王志伟 四则运算第一周博客 @仇夏四则运算第一周博客 ...
- 2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算——第一周
2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算 组队成员: 仇夏 学号: 20172310 博客地址:点击这里 1. 需求分析: 可生成题目: - 输入要想生成 ...
- 2017-2018-2 20165225『Java程序设计』课程 结对编程练习_四则运算
2017-2018-2 20165225『Java程序设计』课程 结对编程练习_四则运算 需求分析: 支持整数,可进行多运算符运算,有优先级. 设计思路: 在有括号的情况下,先计算得出括号中的结果,如 ...
- 20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结
20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结 结对伙伴 学号 :20172307 姓名 :黄宇瑭 伙伴第一周博客地址: http://www.cnblogs.com/ ...
- 20172311『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结
20172311『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结 结对伙伴 学号 :20172307 姓名 :黄宇瑭 伙伴第一周博客地址 对结对伙伴的评价:黄宇瑭同学的优势在于能够想出一 ...
随机推荐
- linux下卸载自带的JDK和安装想要的JDK
卸载 1.卸载用 bin文件安装的JDK方法: 删除/usr/java目录下的所有东西 2.卸载系统自带的jdk版本方法: 查看自带的jdk: #rpm -qa | grep gcj 看到如 ...
- 自己电脑能ping别人的,但别人电脑去不能跟我们的电脑通信
记住一点:多半时防火墙出了问题. 打开“控制面板”——点击“系统和安全”——“Windows防火墙”——点击“打开或关闭”Windows防火墙--点击家庭组网络或者工作组网络——关闭家庭组和工作组的防 ...
- Java中的字节流,字符流,字节缓冲区,字符缓冲区复制文件
一:创建方式 1.建立输入(读)对象,并绑定数据源 2.建立输出(写)对象,并绑定目的地 3.将读到的内容遍历出来,然后在通过字符或者字节写入 4.资源访问过后关闭,先创建的后关闭,后创建的先关闭 ...
- Push API
[Push API] The Push API gives web applications the ability to receive messages pushed to them from a ...
- EVIL TWIN AP
git clone https://github.com/P0cL4bs/3vilTwinAttacker.git cd 3vilTwinAttacker/ ./installer.sh --inst ...
- WeakReference 在android中的应用
转:http://my.oschina.net/u/1177694/blog/523922 首先我们来看一段代码 public class AutoActivity extends Activity ...
- Linux 字符设备驱动及一些简单的Linux知识
一.linux系统将设备分为3类:字符设备.块设备.网络设备 1.字符设备:是指只能一个字节一个字节读写的设备,不能随机读取设备内存中的某一数据,读取数据需要按照先后数据.字符设备是面向流的设备,常见 ...
- linux环境下的c++编程
就C++开发工具而言,与Windows下微软(VC, VS2005等)一统天下相比,Linux/Unix下C++开发,可谓五花八门,各式各样.Emacs, vi, eclipse, anjuta,kd ...
- RocketMq --consumer自动实现负载均衡
这边使用一个producer和两个consumer是实现负载均衡. 看一下代码示例 package com.alibaba.rocketmq.example.message.model; import ...
- YYKit @autoreleasepool 使用,优化内存
写在前面 最近再看YY大神的YYKit工具,发现在代码中经常使用@autoreleasepool,特别是在与for循环搭配使用的时候.刚开始很不能理解. 先有个概念: 自己创建的对象:使用 alloc ...