结队编程作业

https://github.com/ZekiChan/pig_tail

姓名 分工
陈祉镪 原型设计,代码编写
庄婉苹 原型设计,博客编写

一、原型设计

1.1原型作品链接

https://f20heo.axshare.com/#id=l3lg3e&p=首页
https://modao.cc/app/27fd1c848ef549a309ba1ad31811c5b25ee75dca (废弃稿)

1.2采用的原型开发工具

Axure

1.3具体的截图

“首页”,即进入游戏页面,可以选择进入“开始游戏”页面与“游戏规则”页面。

“开始游戏”,开始游戏,可以选择点击人机对战、双人对战或联机对战,进入“对战页面”,点击返回按钮回到“首页”页面。

“游戏规则”,查看本游戏的游戏规则与取胜方法,点击返回回到“首页”页面。

“对战页面”,进行游戏对战,此页面兼容人机对战、双人对战与联机对战,对战过程中无法放弃游戏,游戏结束自动进入“对战结束”页面;
此页面包括左上方的记牌器(记录牌库中的、对手手中的、放置区的不同花色的牌数)、右上方的牌库(点击即可抽牌)与放置区(放置区显示牌顶花色)、下方的手牌区域(显示你的手牌剩余的不同花色的牌数)

结算界面

1.4遇到的困难和解决办法

遇到的困难 解决办法
对于原型设计使用的工具发生分歧 做出两份原型设计
对原型设计中的交互功能的实现遇到困难 善于运用搜索引擎,获得前人的指导
做了两份原型,一份使用墨刀,一份使用Axure,需要做出选择 Axure更加专业,代码负责人陈同学对于实现自己的作品更加熟悉虽然没有我的可爱,最终选择了Axure版本的
按钮无法互动 图片覆盖按钮,调整图片与按钮间的位置

收获

学会了使用原型开发软件,从需求分析到页面的设计,最后完成原型设计,体验了一次完整的原型开发过程,对开发软件的使用也更加熟练了。

二、原型设计实现

2.1代码实现思路:

接口的实现

时间限制,没能完成接口的调用。

代码组织与内部实现设计(类图)

说明算法的关键与关键实现部分流程图

贴出你认为重要的/有价值的代码片段,并解释

最重要的代码片段是出牌判定/抽牌判定

性能分析与改进

描述你改进的思路

减少代码中过多重复的片段,将部分重复的判断通过函数调用来实现。

展示性能分析图和程序中消耗最大的函数

展示出项目部分单元测试代码,并说明测试的函数,构造测试数据的思路

无单元测试

2.2Github签入记录

2.3遇到的代码模块异常或结对困难及解决方法

遇到的困难

没有事先进行模块化设计,导致写代码时很杂乱,面向结果式地打代码,往往第二天看前一天的代码时要看很久才能看懂。

解决办法

加注释,并分割各个不同区域的代码,虽然导致代码的长度成倍增加,但能较容易地一步一步地接着之前的代码往下编写

收获

写代码前一定要先进行流程设计!!!
写代码前一定要先进行流程设计!!!
写代码前一定要先进行流程设计!!!

2.4对队友的评价

to 陈祉镪

值得学习的地方

非常优秀,代码部分一力担下,有非常强大的执行力,和ddl驱动型的我形成鲜明对比。

需要改进的地方

团队间的沟通不太好

to 庄婉苹

值得学习的地方

很积极主动地事先开始进行原型设计和python的学习。

需要改进的地方

队友间的沟通没有做好,没有事先进行团队分工,导致做了许多重复的事,影响了后面做其他任务的时间。

2.5

程序设计进度条

第N周 新增代码(行) 累计代码(行) 本周学习耗时(小时) 累计学习耗时(小时) 重要成长
1 0 0 30 30 学习了如何进行原型设计,学习了axure rp9的使用,初步设计原型
2 0 0 35 65 深入学习python,学习pycharm的使用,pygame库的调用
3 300+ 300+ 25 90 基本的UI框架搭建
4 300+ 699 20 110 游戏主体的代码编写

PSP

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划
· Estimate · 估计这个任务需要多少时间 30 20
Development 开发
· Analysis · 需求分析 (包括学习新技术) 2000 3600
· Design Spec · 生成设计文档 10 10
· Design Review · 设计复审 10 10
· Coding Standard · 代码规范 (为目前的开发制定合适的规范) 5 5
· Design · 具体设计 60 120
· Coding · 具体编码 3000 2700
· Code Review · 代码复审 60 240
· Test · 测试(自我测试,修改代码,提交修改) 60 120
Reporting 报告
· Test Repor · 测试报告 20 10
· Size Measurement · 计算工作量 30 45
· Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 10 20
· 合计 5355 7020

三、心得

陈祉镪

作业难度:
作业难度感觉还可以,就是学习python和学习使用pycharm、Axure RP原型制作等花费了太多的时间,导致后面没时间做其他的功能。
作业感想:
一句话:python天下第一。
比起c语言,python的开发真的简练而且舒适,可调用的库也是巨多。
对之后学习的启发:
关爱生命,拒绝ddl驱动。
再也不想在提交作业的前一天凹代码了(脖子疼)

庄婉苹

通过这次的结对作业,认识到自己的很多不足:
喜欢把作业拖到ddl再开始动手做,自己一个人的作业还好,放在团队中,拖累了团队的队友,拉慢了整个团队的进度。
团队的间的交流也很重要,但是总是处于一种被动沟通的状态。导致团队间的沟通缺失。

posted @ 2021-10-24 22:36  OrangeJS  阅读(69)  评论(0编辑  收藏  举报