第二次结对编程作业
1、博客链接
2、具体分工
我:代码、博客 同学:代码、博客
3、PSP表格
PSP | Personal Software Process Stages | 预估耗时(分钟) |
---|---|---|
Planning | 计划 | 20min |
Estimate | 估计这个任务需要多少时间 | 10min |
Analysis | 需求分析 (包括学习新技术) | 7d |
Design Spec | 生成设计文档 | 30min |
Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 10min |
Design | 具体设计 | 2h |
Coding | 具体编码 | 2d |
Test | 测试(自我测试,修改代码,提交修改) | 2h |
Postmortem & Process Improvement Plan | 事后总结, 并提出过程改进计划 | 1h |
合计 | 11d |
4、解题思路描述与设计实现说明(15分)
- 网络接口的使用:
- 代码组织与内部实现设计(类图):
- 说明算法的关键与关键实现部分流程图:
5、关键代码解释
- 这个是出牌AI的代码,AI会先查找是否有特殊牌型,如果没有再根据普通规则出牌
class AI { private Card pokerCard[]=new Card[13]; //十三张牌 void getCard(int hs,int sz,int ps) //获得一张牌,hs为花色,sz为数字,ps为牌序 { pokerCard[ps]=new Card(); pokerCard[ps].colour=hs; pokerCard[ps].number=sz; } void sortCard() //将获得的牌进行排序,以便后边出牌时查找 { Card k=new Card(); int i,j; for (i=0;i<12;i++) { for (j=i+1;j<13;j++) { if (pokerCard[i].number>pokerCard[j].number) { k=pokerCard[i]; pokerCard[i]=pokerCard[j]; pokerCard[j]=k; } } } } void playCard() //经过计算输出
6、性能分析与改进
- 描述改进思路
展示性能分析图和程序中消耗最大的函数
7、单元测试
展示出项目部分单元测试代码,并说明测试的函数,构造测试数据的思路
8、贴出Github的代码签入记录
9、遇到的代码模块异常或结对困难及解决方法
- 问题描述:接口不知道如何编写,客户端也不会做
- 做过哪些尝试:尝试着在网上查找资料
- 是否解决:没有解决
有何收获:做一个程序不止是要会写代码,还要接口、客户端等许许多多方面。只有这些全都做好才能完成一个好的作品
10、评价你的队友
- 值得学习的地方:乐于学习
需要改进的地方:沟通太少
11、学习进度条
第2周 | 新增代码(行) | 累计代码(行) |
---|---|---|
1 | 125 | 125 |
2 | 400 | 525 |