20172333 2017-2018-2 《程序设计与数据结构》实验2报告(最终版)

20172333 2017-2018-2 《程序设计与数据结构》实验2报告(最终版)

1.结对成员

李楠20172330

领航员:李楠

驾驶员:严域俊



成绩分配:五五开

2.相关测试过程及截图

  • [x] 完整一套流程截图(创建题目,中缀转后缀,计算后缀,对比答案,答案正确个数。)
  • [x] 分数测试类单独测试截图
  • [x] 整数测试类单独测试截图
  • [x] 中缀转后缀单独测试截图

3.测试中遇到的问题及解决办法

这周主要问题所在:由于在最后计算测试类编写的时候运用的方法来自几个类的合并,导致了在输出答案的时候,运行时要求答案是int型,结果其他类的方法返回的是String值,将其改正为return Int 值之后,牵一发而动全身,瞬间多个类图报错。
解决方法:在原本基础进行修改无果后,就很随意的把五个类各自都加了四个方法,再在最后的总的测试类里面运用了就好了。

4.结对码云链接

5.小组成员项目感想

严域俊:做分类时一定要整体考虑好对象的类型,要不然后期有的改。
李楠:ALT + Enter 是个好东西。

6.小组结对照片

7.PSP

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 65
Estimate 估计这个任务需要多少时间 3 2
Development 开发 2000 3000
Analysis 需求分析 (包括学习新技术) 350 300
Coding Standard 代码规范 (为目前的开发制定合适的规范) 60 10
Design UML 设计项目UML类图 60 60
Coding 具体编码 1500 2000
Code Review 代码复审 30 30
Test 测试(自我测试,修改代码,提交修改) 300 300
Size Measurement 计算工作量(实际时间 ) 2 2
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 30 10
合计 4395 5229

23:03:23
李楠 2018/5/15 23:03:23
| PSP2.1 | Personal Software Process Stages | 预估耗时(分钟)|实际耗时(分钟)|
| ------------| :----------------:|:----------------:|:---------------: |
| Planning | 计划 | 70 | 75 |
| Estimate | 估计这个任务需要多少时间 | 4 | 3 |
| Development | 开发 | 2200 | 2600 |
| Analysis |需求分析 (包括学习新技术) | 380 | 400 |
| Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 40 | 20 |
| Design UML | 设计项目UML类图 | 60 | 60 |
| Coding | 具体编码 | 2000 2200 |
| Code Review | 代码复审 | 30 | 40 |
| Test | 测试(自我测试,修改代码,提交修改) | 300 | 350 |
|Size Measurement | 计算工作量(实际时间 )| 2 | 3 |
|Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 20 | 10 |
| | 合计 | 5106 | 5761 |

8.Uml类图

参考资料

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

结对编程项目-四则运算

S.O.L.I.D 原则

原文地址:https://www.cnblogs.com/yanyujun527/p/9043633.html

时间: 2024-12-18 16:05:43

20172333 2017-2018-2 《程序设计与数据结构》实验2报告(最终版)的相关文章

20172333 2017-2018-2 《程序设计与数据结构》四则运算报告(2)

20172333 2017-2018-2 <程序设计与数据结构>实验2报告(2) 1.结对成员 严域俊20172333 2.小组结对合作图片 3.项目中自己负责的部分 package ddaadada; import java.util.*; public class LT { public char[] op = {'+','-','*','/','(',')'}; public String[] strOp = {"+","-","*&qu

20172332 2017-2018-2 《程序设计与数据结构》第七周学习总结

20172332 2017-2018-2 <程序设计与数据结构>第六周学习总结 教材学习内容总结 第九章继承 1.创建子类. 子类与父类的关系.子类是父类的其中一种. 派生操作在子类中加保留字extends实现. 子类的实例化并不依赖于父类的实例化. 2.protected修饰符.(为了让子类能够访问并且不违反封装性原则) 父类中的变量和方法被声明为protected可见性时,子类就可以使用. UML图中,protected成员前加#. 父类的构造方法,子类不能继承(除非用super引用).

20172322 《程序设计与数据结构》第七周学习总结

20172322 2017-2018-2 <程序设计与数据结构>第七周学习总结 教材学习内容总结 学会了使用UML图来表示各类间关系,UML也可以使得编程的思路变得清晰.例如#代表可继承,+代表public,-代表private. 学会了使用super引用父类的构造方法,因为父类的构造方法不会继承给子类,但如果子类需要继承父类的构造方法需要使用super. 了解到当子类和父类有相同的方法名和签名时,子类方发将重写父类方法,例如书上例9.7.9.8,它的存在允许两个有继承关系的对象按照同名规则使

20172324 2017-2018-2 《程序设计与数据结构》第七周学习总结

20172324 2017-2018-2 <程序设计与数据结构>第七周学习总结 教材学习内容总结 编写类是定义一组类似的对象:类建立了对象的特征和行为,但没有位声明的变量预留内存空间(除非所声明的变量是静态的) 继承是从现有类派生新类的过程,并且是一种强有力的软件开发技术. super可用来访问构造方法.父类的构造方法不能直接按名字调用,但可用super引用调用父类的构造方法. 当子类和父类有相同的方法名时,子类方法将重写父类方法,子类方法优先.但是子类不能重写final方法. 子类不可以重写

20172330 2018-2019-1 《程序设计与数据结构》第三周学习总结

20172330 2018-2019-1 <程序设计与数据结构>第二周学习总结 教材学习内容总结 队列 1.队列的元素是按FIFO方式处理的:第一个进入的元素,也就是第一个退出的元素. 2.队列是一种可存储重复编码秘钥的便利集合. 3.通常用队列来实现排队的模拟. 4.分别指向链表首元素.链表尾元素的两个引用,方便了队列的链表实现. 5.enqueue和dequeue操作作用于队列的对立端 6.由于队列操作会修改集合的两端,因此将一端固定于索引0处. 7.非环形数组实现元素移位,将产生O(n)

#20172330 2018-2019-1 《程序设计与数据结构》第四周学习总结

20172330 2018-2019-1 <程序设计与数据结构>第二周学习总结 教材学习内容总结 队列 1.列表可以分为有序列表.无序列表和索引列表. 2.有序列表中的元素具有内在关联,这种关联定义了元素之间的顺序. 3.无序列表中的元素按使用者所选择的任意方式排序. 4.索引列表为他的元素维护一段连续的数字索引值. 5.迭代器是一个对象,它提供了在一个集合上进行迭代操作的手段. 6.接口允许我们创建多态使用,其中被调用的方法是基于被引用时的特定对象的. 7.在创建联赛赛程时,有序列表是很方便

20172330 2018-2019-1 《程序设计与数据结构》第六周学习总结

20172330 2018-2019-1 <程序设计与数据结构>第六周学习总结 教材学习内容总结 树 1.树是非线性结构,其元素组织为一个层次结构 2.树的度表示树中的任意结点的最大子结点数 3.有m个元素的平衡n叉树的高度是lognm 4.树的遍历有4种方法 5.进行层序遍历时可采用队列来储存树中的元素 6.使用数组实现二叉树时,位于位置n的元素的左孩子在(2n+1)的位置,其右孩子在(2*(n+1))的位置 7.树的基于数组的存储链实现方式可以占数组中的连续位置,不管树是不是完全树 8.如

20172330 2018-2019-1 《程序设计与数据结构》第八周学习总结

20172330 2018-2019-1 <程序设计与数据结构>第八周学习总结 教材学习内容总结 一.堆 堆就是具有两个附加属性的一棵二叉树 对每一结点,它小于或等于其左孩子和右孩子 二.向堆中添加一个元素 1.将元素添加为新的叶节点,同时保持树是完全树. 2.将该元素向根的方向移动,将它与父结点对换,直到其中的元素关系满足要求为止. 如图所示: 与次优二叉树相对,二叉排序树是一种动态树表.其特点是:树的结构通常不是一次生成的,而是在查找过程中,当树中不存在关键字等于给定值的结点时再进行插入.

20172322 2017-2018-2 《程序设计与数据结构》第二周学习总结

20172322 2017-2018-2 <程序设计与数据结构>第二周学习总结 教材学习内容总结 了解了print与println的区别 了解了字符串的拼接可以用+来完成 了解了转义字符的使用 学会了使用赋值 学会使用部分算术运算符 学会了使用Scanner来实现交互性 教材学习中的问题和解决过程 问题1:在最初接触赋值时对foalt和double的赋值范围不了解 问题1解决方案:使用万能的度娘后看到一个高赞答案后有了了解 问题2:在提前预习时看到2.7图形后敲入的代码无法执行 问题2解决方案

20172315 2017-2018-2 《程序设计与数据结构》第四周学习总结

20172315 2017-2018-2 <程序设计与数据结构>第四周学习总结 教材学习内容总结 第四章主要介绍了关于编写方面的一些问题 介绍了类型与对象之间的关系 通过例题等介绍了怎样编写一个属于自己的一个类和如何使用它 介绍了实例数据和UML图的概念 在封装一节,我学习到了如何对自己程序中的一些东西进行封装,并知道了如何读取和修改它 学习了return语句相关的知识 第七章主要讨论了面向对象软件的设计方法 了解了静态类相关的知识,其中包括静态变量与静态方法 知道了类间的各种关系,包括依赖.