2018-2019-2《Java程序设计》结对编程项目-四则运算 第一周 阶段性总结
码云链接
https://gitee.com/A5320/pair_programming_code
需求分析
- 实现一个命令行程序,要求:
1.自动生成小学四则运算题目(加、减、乘、除)
2.支持整数
3.支持多运算符(比如生成包含100个运算符的题目)
4.支持真分数
5.统计正确率 - 从题目要求可知,我们需要实现以下几个功能:
1.随机生成个四则运算题目,并可手动控制生成的题目数目
2.能将计算的结果转化为分数
3.自动计算生成题目的结果,并能判断用户输入是否与运算结果相同 - 现阶段已实现要求2、3,要求4虽已初步实现但仍存在一些问题,我们将会在下一阶段中实现所有项目要求的功能,并可拓展以下功能:
1.随机生成题目
2.题目去重
3.生成题目后从文件读入并判题
设计思路
- 本周主要考虑要求2,3,4
- 参考2016-2017-2 《Java 程序设计》课堂实践项目学习了如何对逆波兰式求值以及如何将输入的中缀表达式转化为后缀表达式
- 借鉴教材上第100页的例子22封装了有理数类Rational,实现了对真分数的支持,并考虑到在分母为零时输出错误提示
UML类图

运行过程截图


结对感受
本次结对伊始,我跟搭档先各自独立研究项目,各有着重点,比如我主要研究分数运算,小伙伴着重于中缀式转换为后缀式,在后期将代码合成的时候,我们发现想要将数据类型整合在一起需要进行比较麻烦的修改,由此吸取教训,以后分配任务的时候应当提前规划好这些细节。
对结对的小伙伴做出评价
我的结对搭档是龚仕杰,在合作的过程中他是牵头人,他对小组做出了很大的贡献,在编程过程中我们互相学习,在遇到困难时不独自发愁,而是一起讨论解决办法。希望能在以后的任务中继续合作密切配合。
PSP
| PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) | |
|---|---|---|---|---|
| Planning | 计划 | 15 | 30 | |
| Development | 开发 | |||
| Analysis | 需求分析 (包括学习新技术) | 25 | 35 | |
| Design Spec | 生成设计文档 | 30 | 30 | |
| Design Review | 设计复审 (和同事审核设计文档) | 20 | 30 | |
| Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 35 | 45 | |
| Design | 具体设计 | 60 | 80 | |
| Coding | 具体编码 | 150 | 300 | |
| Test | 测试(自我测试,修改代码,提交修改) | 30 | 35 | |
| Size Measurement | 计算工作量 | 10 | 20 | |
| Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 30 | 35 | |
| 合计 | 435 | 670 |
2018-2019-2《Java程序设计》结对编程项目-四则运算 第一周 阶段性总结的更多相关文章
- 20175324王陈峤宇 2018-2019-2《Java程序设计》结对编程项目-四则运算 第一周 阶段性总结
20175324王陈峤宇 2018-2019-2<Java程序设计>结对编程项目-四则运算 第一周 阶段性总结 需求分析 这次的结对作业是要求我们利用栈来设计一个计算器. 自动生成四则运算 ...
- 20175229许钰玮 2018-2019-2《Java程序设计》结对编程项目-四则运算 第一周 阶段性总结
20175229许钰玮 2018-2019-2<Java程序设计>结对编程项目-四则运算 第一周 阶段性总结 需求分析 自动生成四则运算题目(加.减.乘.除). 既可以用前缀算法(波兰算法 ...
- 20175311胡济栋 2018-2019-2《Java程序设计》结对编程项目-四则运算 第二周 阶段性总结
20175311胡济栋 2018-2019-2<Java程序设计>结对编程项目-四则运算 第二周 阶段性总结 需求分析 这是利用栈来设计一个计算器的第二阶段总结. 自动生成四则运算的题目( ...
- 20175316盛茂淞 2018-2019-2《Java程序设计》结对编程项目-四则运算 第二周(6)
20175316与20175329 结对编程练习_四则运算(第二周) 1.需求分析 实现一个命令行程序,要求: 自动生成指定数量的小学四则运算题目(加.减.乘.除) 支持整数 统计正确率 支持多运算符 ...
- 结对编程项目——四则运算vs版
结对编程项目--四则运算vs版 1)小伙伴信息: 学号:130201238 赵莹 博客地址:点我进入 小伙伴的博客 2)实现的功能: 实现带有用户界面的四则运算:将原只能在 ...
- 20165223 结对编程之四则运算week1-阶段性总结
目录 一.结对对象 二.需求分析 三.设计思路 四.功能截图 五.结对感受 一.结对对象 担任角色 驾驶员(Driver):20165223 蔡霓(是控制键盘输入的人) 领航员(Navigator): ...
- 20165223 结对编程之四则运算week2-整体总结
目录 一.结对对象 二.需求分析 三.设计思路 四.核心代码 五.功能截图 六.结对感受 一.结对对象 担任角色(本周交换角色,流动学习) 驾驶员(Driver):20165218 赵冰雨(是控制键盘 ...
- 20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结
20172311『Java程序设计』课程 结对编程练习_四则运算第一周阶段总结 结对伙伴 学号 :20172307 姓名 :黄宇瑭 伙伴第一周博客地址: http://www.cnblogs.com/ ...
- 2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-最后阶段
2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-最后阶段 最后的一周,时间越来越紧张,因为之前的拖沓和一些事情的耽误,导致了如今的紧张,这一周应该是我们小组效率最高 ...
随机推荐
- Angular的项目结构
前面我们已经在我们想要的位置顺利的创建了Angular项目,现在我们就来看一下项目的结构吧. 下面使我们项目的整体结构,包括node的模板.src资源文件以及配置文件等. 下面是根目录文件夹内的文件用 ...
- git、github、gitlab之间的关系
GIt-版本控制工具:GitHub-一个网站平台,提供给用户空间存储git仓储,保存用户的一些数据文档或者代码等:GitLab - 基于Git的项目管理软件. Git分布式版本控制系统 Git是一款自 ...
- 部署Java和Tomcat
Tomcat介绍 Tomcat服务器是一个免费的开放源代码的Web应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP网页的首选. Tomcat和Nginx.Apach ...
- SQL NULL 函数
SQL ISNULL().NVL().IFNULL() 和 COALESCE() 函数 请看下面的 "Products" 表: P_Id ProductName UnitPrice ...
- android 获取通话记录
在manifest添加以下权限<uses-permission android:name="android.permission.READ_CALL_LOG" />&l ...
- ZABBIX监控mysql主从状态
模板如下 <zabbix_export> <version>3.4</version> <date>2018-11-30T08:28:28Z</d ...
- redis 基本原理及安装
一:什么是redis? Redis 是一个开源的,高性能的,基于键值对的缓存与存储系统.通过提供多种键值数据类型来适应不同场景下的缓存与存储需求. 二:redis数据库有什么优点? Redis数据库中 ...
- 路由信息对象Route之属性query和params的区别
query的使用 第一步:在<router-link/>标签中配置如下 <router-link :to="{name:'beijing',query:{id:1,user ...
- 基于Metronic的Bootstrap开发框架--工作流模块功能介绍(2)
本篇继续<基于Metronic的Bootstrap开发框架--工作流模块功能介绍>,继续介绍基于Metronic的Bootstrap开发框架的工作模块功能,介绍工作流模块中相关业务表单的界 ...
- Jenkins下载历史Build版本的归档文件
/root/.jenkins/jobs/zgg-crm-pre/builds//com.zgg$crm/archive/com.zgg/crm/0.0.1/crm-0.0.1.war https:// ...