这个作业属于哪个课程 | 构建之法-2021秋-福州大学软件工程 |
---|---|
这个作业要求在哪里 | 2021秋软工实践第二次结对编程作业-CSDN社区 |
个人学号 | 031902620 |
结对成员学号 | 031902609 |
结对小伙伴的作业博客链接 | https://bbs.csdn.net/topics/601422562 |
GitHub 仓库地址 | zhixi12/ruan-gong: 1 (github.com) |
视频演示链接 | 软工作业展示_哔哩哔哩_bilibili |
重点功能
1、原型转为代码,要确定各个按钮的位置,以及背景摆放,以及微信开发者工具的功能学习。
2、不同页面间如何通过缓存来调用参数。
3、博饼结果的判断。
结对编程体验
相当于多了一个人一起学习代码,实现了1+1>2的效果,很多情况下得到的成果,是两个人一起讨论的结果,这远远不是两个人单独埋头苦干能得到的效率。
过程照片
花费时间较长的事件
1、插入图片后让图片填充满整个屏幕以及插入两个图片,如何让两个图片无缝缝合。
2、参数传递,试过全局变量,函数调用等方法,最后选择利用系统缓存的方式来传递参数。
3、生成随机数中,setdata的使用情况。
PSP表格
Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
Planning(计划) | ||
Estimate(估计时间) | 30 | 40 |
Development(开发) | ||
Analysis(需求分析(包括学习新技术)) | 600 | 800 |
Design Spec(生成设计文档) | 10 | 10 |
Design Review(设计复审) | 20 | 20 |
Coding Standard(代码规范 ) | 20 | 20 |
Design(具体设计) | 60 | 80 |
Coding(具体编码) | 700 | 800 |
Code Review(代码复审) | 60 | 60 |
Test(测试(自我测试,修改代码,提交修改)) | 200 | 210 |
Test Report(测试报告) | 20 | 20 |
Size Measurement(计算工作量) | 10 | 10 |
Postmortem & Process Improvement Plan(事后总结, 并提出过程改进计划) | 90 | 90 |
Total(合计) | 1820 | 2160 |
学习进度条
项目相关要求
做一个可以线上线下博饼的程序或者软件。
遇到的困难及解决方法
1、选择哪种形式来实现博饼,最后选择了微信小程序。
2、微信开发者工具的使用学习,以及前端语言js的学习。
3、页面布局,以及参数传递。
4、生成博饼的逻辑:生成随机数。
关键代码or设计说明
"pages": [//一共七个界面
"pages/home/home",//主页界面
"pages/help/help",//帮助界面
"pages/set/set",//玩家设置界面(获取个人信息)
"pages/creat/creat",//创建房间界面
"pages/game/game",//游戏界面
"pages/join/join",//加入房间界面
"pages/award/award"//设置奖品界面
],
下面是背景填充:
//wxml
<view class="auto">
<image style="width:100%;height:100%;" mode='aspectFill' src="https://pic.imgdb.cn/item/615b0bfa2ab3f51d91227dd6.png"></image>
</view>
//图片通过图床上传到网上,在调用
//wxss
.auto{
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
这样就实现了将图片填满整个背景。
接下来是缓存调用参数
//js
data: {
value:2312312,
},
wx.setStorage({
key:'number',
data:this.data.value
})
//得到了一个名字叫number,数据是value的值的缓存
//js
onLoad: function (options) {
var that = this;
wx.getStorage({
key:"number", //获得了一个名字叫number的缓存
success: function(res) {
that.setData({ //并把这个缓存的数据设置给了value
value: res.data
})
},
})
},
接下来是生成随机数
//js
let one = Math.floor(Math.random() * 5 + 1);
let two = Math.floor(Math.random() * 5 + 1);
let three = Math.floor(Math.random() * 5 + 1);
let four = Math.floor(Math.random() * 5 + 1);
let five = Math.floor(Math.random() * 5 + 1);
let six = Math.floor(Math.random() * 5 + 1);
//通过floor和random的结合可以生成任意数值的随机数,random*5+1便是1-6的随机数