本人学号201421122059
搭档学号201421122067
coding地址:https://coding.net/u/cjx1067267667/p/partner-project-1/git
需求分析:
1.实现自动生成四则运算题目的功能。
2.实现可选择语言的功能。
3.实现计时器的功能。
4.实现对用户答案进行批改的功能。
5.实现图形界面的功能。
思维导图:
命名方法:拼音直接命名和驼峰命名法都有。
代码展示:
//根据不同button跳转到相应的语言界面 jButton1.setText("简体中文"); jButton1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { jButton1ActionPerformed(evt); } }); jButton2.setText("繁体中文"); jButton2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { jButton2ActionPerformed(evt); } }); //计时器 public class CountingThread extends Thread { public boolean stopped = true; public CountingThread() { setDaemon(true); } @Override public void run() { while (true) { if (!stopped) { long elapsed = System.currentTimeMillis() - programStart - pauseCount; label.setText(format(elapsed)); } try { sleep(1); // 1毫秒更新一次显示 } catch (InterruptedException e) { e.printStackTrace(); System.exit(1); } } } // 将毫秒数格式化 public String format(long elapsed) { int hour, minute, second, milli; milli = (int) (elapsed % 1000); elapsed = elapsed / 1000; second = (int) (elapsed % 60); elapsed = elapsed / 60; minute = (int) (elapsed % 60); elapsed = elapsed / 60; hour = (int) (elapsed % 60); return String.format("%02d:%02d:%02d %03d", hour, minute, second, milli); } }
运行截图:
1.语言选择界面:
2.主界面运行:
3.保存界面:
4.两人工作是的照片:
PSP | Personal Software Process Stages | Time Senior Student | Time |
---|---|---|---|
Planning | 计划 | 30 | 30 |
Estimate | 估计这个任务需要多少时间 | 30 | 30 |
Development | 开发 | 40 | 50 |
Analysis | 需求分析 (包括学习新技术) | 30 | 20 |
Design Spec | 生成设计文档 | 5 | 10 |
Design Review | 设计复审 | 2 | 10 |
Coding Standard | 代码规范 | 1 | 10 |
Design | 具体设计 | 20 | 30 |
Coding | 具体编码 | 46 | 60 |
Code Review | 代码复审 | 10 | 10 |
Test | 测试(自我测试,修改代码,提交修改) | 60 | 50 |
Reporting | 报告 | 10 | 10 |
测试报告 | 1 | 10 | |
计算工作量 | 1 | 1 | |
并提出过程改进计划 | 8 | 10 |
汉堡式评价:
优点:基础很扎实,很多问题都请教兴哥,人也非常细心发现我的许多问题。
缺点:但是对最终的成果要求不够高。
希望能将作品做的更完美就好了。
小结感受:深刻感受到1+1>2的合作模式,合作很愉快。很多问题我一个人做的话很难做出来,
但是来人合作就能很快的解决问题。