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程序设计』课程 结对编程练习_四则运算第三周阶段总结的更多相关文章

  1. 2017-2018-2 1723 『Java程序设计』课程 结对编程练习_四则运算第三周总结

    相关测试过程截图 测试了由中缀表达式转后缀表达式的Junit测试,分别进行了整数的和分数的,测试成功截图 由于生成问题和计算问题中,问题都是随机产生的,暂时不会进行Junit测试,故没有进行,但应是正 ...

  2. 20172325『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结

    20172325『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结 结对伙伴 学号:20172306 姓名:刘辰 结对伙伴博客链接 刘辰同学对编程的积极程度很高,并且在编程能力上很不错,有 ...

  3. 2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算

    2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算 经过第一阶段的学习,同学们已经熟悉了这门语言基本的用法.在一次又一次对着电脑编写并提交代码,进行练习的时候,有没有觉 ...

  4. 2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

    2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周 博客要求 组内同学需各自发表博客 博客中需包含以下内容: 相关过程截图 关键代码解释 遇到的困难及解决 ...

  5. 2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算_第三周

    2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算 组队成员: 仇夏 学号: 20172310 博客地址: @王志伟 四则运算第一周博客 @仇夏四则运算第一周博客 ...

  6. 2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算——第一周

    2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算 组队成员: 仇夏 学号: 20172310 博客地址:点击这里 1. 需求分析: 可生成题目: - 输入要想生成 ...

  7. 2017-2018-2 20165225『Java程序设计』课程 结对编程练习_四则运算

    2017-2018-2 20165225『Java程序设计』课程 结对编程练习_四则运算 需求分析: 支持整数,可进行多运算符运算,有优先级. 设计思路: 在有括号的情况下,先计算得出括号中的结果,如 ...

  8. 20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结

    20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结 结对伙伴 学号 :20172307 姓名 :黄宇瑭 伙伴第一周博客地址: http://www.cnblogs.com/ ...

  9. 20172311『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结

    20172311『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结 结对伙伴 学号 :20172307 姓名 :黄宇瑭 伙伴第一周博客地址 对结对伙伴的评价:黄宇瑭同学的优势在于能够想出一 ...

随机推荐

  1. 通过网址request到response经历的过程

    前言当我们在浏览器中输入一个网址,比如www.google.cn,浏览器就会加载出百度的主页.那么浏览器背后完成的具体是怎么样的呢? 总结起来大概的流程是这样的: (1)浏览器本身是一个客户端,当你输 ...

  2. Java 中 synchronized的用法详解(四种用法)

    Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码.本文给大家介绍java中 synchronized的用法,对本文感兴趣的朋友一起看看吧 ...

  3. 运行PowerShell脚本

    [运行PowerShell脚本] powershell脚本以ps1为扩展名.最的一个是数字1,不是字母l. 当右键ps1文件时,会有用powershell运行的选项,选中这个选项即可运行. 团体pow ...

  4. 在 Android Studio 上调试数据库 ( SQLite ) (转)

    转自:http://c.colabug.com/thread-1781696-1-1.html 以前 Eclipse 时代,调试 SQLite 都是将数据库文件导出到电脑,然后再用软件打开查看.现在我 ...

  5. 如何正确获取MYSQL的ADO连接字符串

    首先你正确安装了MYSQL的数据库驱动程序(mysql-connector-odbc-5.3.2-win32.msi )http://dev.mysql.com/downloads/connector ...

  6. java并发:CopyOnWriteArrayList简单理解

    Java集合的快速失败机制 “fail-fast” "fail-fast"是java集合的一种错误检测机制,当多个线程对集合进行结构上的改变的操作时,有可能会产生 fail-fas ...

  7. CentOS Find命令

    find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子目录和文件全部进 ...

  8. 7. Reverse Integer (整数的溢出)

    Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, return -321 For the p ...

  9. Python+Selenium学习--定位iframe中的对象

    场景 在web 应用中经常会出现frame 嵌套的应用,假设页面上有A.B 两个frame,其中B 在A 内,那么定位B 中的内容则需要先到A,然后再到B.      switch_to_frame ...

  10. linux下面redis安装

    安装方法1redis1.下载安装包2.解压程序包tar -zxvf  redis-3.2.6.tar.gz3.编译源程序make(编译失败,查看是否安装gcc   如果没有yum install gc ...