第二次结对编程作业
“福建赌王”之争
- 具体分工
UI部分:由我的大腿队友沈国煜负责。
AI部分:由拖队友后腿的林铮威负责。
-
PSP
PSP2.1 Personal SoftwareProcess Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 30 40 · Estimate · 估计这个任务需要多少时间 2000 2800 Development 开发 1000 720 · Analysis · 需求分析 (包括学习新技术) 60 30 · Design Spec · 生成设计文档 30 30 · Design Review · 设计复审 60 40 · Coding Standard · 代码规范
(为目前的开发制定合适的规范)30 15 · Design · 具体设计 60 40 · Coding · 具体编码 600 432 · Code Review · 代码复审 180 144 · Test · 测试(自我测试,修改代码,提交修改) 120 80 Reporting 报告 30 30 · Test Repor · 测试报告 40 30 · Size Measurement · 计算工作量 15 45 · Postmortem & Process
Improvement Plan· 事后总结, 并提出过程改进计划 45 30 · 合计 4300 4560 -
解题思路描述与设计实现说明
- 网络接口的使用:
- ...
- 代码组织与内部实现设计:
- ...
- 算法的关键:
- 权值比对:
- 每位玩家的手牌有13张,于是每个人的手牌一共有13的阶乘(13 x 12 x 11 x……1)这么多种的排列方式。我的想法便是把所有的排列方式储存起来,然后前3张就是前墩,中间的5张就是中墩,最后的5张就是后墩。通过对十三水每种牌型进行设置权值,紧接着对每种排列的前中后墩判断,通过每一墩的牌型,得到他们的权值,计算一下手牌的权值总和,那么,13!种的排列中权值最大的就是赢面最大的牌。
-
关键代码解释
权值判断:以同花顺与炸弹为例
通过对十三水每种牌型进行设置权值,紧接着对每种排列的前中后墩判断,通过每一墩的牌型,得到他们的权值,计算一下手牌的权值总和 -
性能分析与改进
-
单元测试
-
Github的代码签入记录
-
遇到的问题及解决方法
遇到的问题 :
刚开始接触题目的迷茫,我的天(这什么魔鬼题目...),对于十三水这个游戏毫无了解,以及对于这个作业如何完成感到无助。
做出的尝试:
与队友一起叫上舍友,打了一晚上紧张刺激的十三水,对于游戏的了解程度大大加深。
对于作业的完成在与队友的讨论过后,明确分工队友负责UI部分,我负责AI部分,并且在网上寻找一些资料进行相关的学习了解。
是否解决:已解决
有何收获:
收获颇丰,实践出真知,与其说把十三水的规则看个十遍百遍,不如来一局紧张刺激的宿舍实战。通过实践
学习知识是最快的捷径!
- 评价你的队友
值得学习的地方:
队友清晰的逻辑思维是我所缺少的,我觉得应该向他学习一下如何保持清晰的逻辑思维,不论是在开发或者是在设计的时候都有很大的作用。
需要改进的地方:
我的队友别名又叫沈波,原因就是他讲话比较抽象,经常讲一些抽象话,所以平时可能会有时候不能够顺利理解队友的思维想法。
-
学习进度条
第N周 新增代码(行) 累计代码(行) 本周学习耗时(小时) 累计学习耗时(小时) 重要成长 1 0 0 240 240 初步掌握Axure Rp的用法 2 678 678 1140 1380 构思完成AI算法