• 结对编程作业


    我的博客链接:https://www.cnblogs.com/beryl-z/p/13843667.html
    黄嘉颖的博客链接:https://www.cnblogs.com/hjy0731/
    Github项目地址:https://github.com/huangjiaying0731/cy_git/tree/master/031802111/华容道 
    具体分工:

    姓名 分工
    黄嘉颖 原型设计、编写代码
    张文婕 查找资料、编写博客

    一、原型设计

    1.设计说明:

    (1)首界面上我们主要展示了游戏名称、开始游戏按钮、游戏介绍按钮、历史记录按钮、退出游戏按钮。主界面设计的比较简洁明了,方便玩家查看,并且快速、准确找到自己需要的功能。

    (2)游戏界面我们主要设计了占据页面最大的部分:拼图区,以及上边界中的“返回主菜单”按钮,方便玩家在不想进行游戏的时间可以退回到主菜单中。还有游戏开始后记录时间、当前已走步数,这也是之后对玩家进行排名的重要依据。在下边界设置了“重新开始”按钮,对于不满意自己当前游戏进度的玩家,可以选择重新开始。

    (3)游戏结束后,会跳转到该界面。主要展示了玩家本次游戏成绩,游戏成绩主要是两方面展示,一是本局游戏持续时间,二是本次游戏总步数。最后对玩家昵称进行记录,方便之后进行排行榜展示。在最后也增加了“返回主菜单”按键,以及“确定”按键,点击确定按键之后,玩家本局游戏信息可以存入库中,进行排行。

    (4)该界面为游戏失败界面,展示了该玩家游戏失败前的游戏时间及步数,并显示“很遗憾您没有打破记录”,这里的记录是指最差游戏记录。页面最下方设置了“返回主菜单”以及“确定”按钮。以便玩家继续游戏或是返回主菜单。

    (5)游戏介绍界面:主页面中点击“游戏介绍”就会跳转到该界面,对玩家进行简短的游戏介绍,方便玩家了解游戏规则。

    (6)游戏排行榜界面:展示了游戏中各个玩家的游戏成绩,去所有成绩中排名前八的游戏成绩进行展现。主菜单中点击“历史记录”,就会调转到该界面。最下面设置了“返回主菜单”,点击后会返回到主界面。

    2.原型开发工具:Axure RP9

    3.结对照片

    4.遇到的困难及解决方法:

    ·困难描述

    (1)对于Axure RP9的使用不熟练,因为之前没有接触过,就需要自行搜索使用方法,所以前期比较耽误时间,也拖慢了进度。

    (2)Axure RP9软件中的原型设计项目不会直接导出为html文件

    ·解决尝试

    (1)在网上找教程,或者向有过使用经验的同学进行求教,自己多进行尝试与练习

    (2)在网页中查找相关资料进行学习

    ·是否解决

    (1)经过学习已解决,对于大部分功能了解,能够完成本次作业所需

    (2)还在积极尝试,但是目前只能导出本地文件

    ·有何收获

    (1)对Axure RP9的使用有了大概了解,并且能够对一些常见功能有了大致的了解,并且在本次作业中进行了实践

    (2)暂无

    二、AI与原型设计实现

    1.代码实现思路:

    ·网络接口的使用

    ·代码组织与内部实现设计

    首先,构建一个游戏的框架,左边包含几个按钮:结束游戏,重新开始,主菜单;通过鼠标点击按钮可以跳转到不同的界面。
    在右边靠上的部分为拼图游戏区,均分为九个小方格。
    在右下部分有原图区,是游戏的原图片,还有右下方的计步器

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

    (1)打乱拼图方块,并对每一块方块进行创建对象,最后进行拼图游戏界面的展示

    (2)鼠标点击拼图移动原理

    ·重要代码片段

    (1)鼠标点击移动拼图原理

    (2)打乱拼图

    (3)构建游戏框架

    ·性能分析与改进

    耗时最大的还是mainloop函数,但是这也是整个框架运行的主要函数,要把这个改进我着实做不到

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


    2.Github代码签入记录


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

    问题:

    (1)、最开始没有协商好从哪个地方开始准备
    (2)、两个人的学习进度不一样,所以分开学习,结果并不如意
    (3)、使用simpleguitk库的时候,一直找不到它的具体函数

    解决方法:

    (1)、查了很多资料,找到了要用到的主要算法
    (2)、对比两个人的空闲时间,一起去益禾堂进行讨论
    (3)、去官方的GitHub上找到了simpleguitk库的函数

    4.评价队友

    ·值得学习的地方

    对待遇到的困难,有钻研精神,能够纳新寻找方法进行解决。接受新知识速度快,并且完成工作很高效。

    5.PSP和学习进度条

    PSP表格

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

    学习进度条

    第N周 新增代码(行) 累计代码(行) 本周学习耗时(小时) 累计学习耗时(小时) 重要成长
    第1周 100 100 9 9 了解需要的算法,进行原型设计构思
    第2周 200 300 15 24 熟悉SimpleGUITk算法
    第3周 300 600 20 44 用Python写了游戏并进行修改
  • 相关阅读:
    腾讯大数据开发实习面经
    网易游戏2021暑期实习生 游戏运营管理面经 已拿offer
    猿辅导大数据校招1面+2面面经
    虎牙直播内容运营(英雄联盟)三轮超高质量面经分享
    字节跳动日常实习广告大数据研发实习面经(初面)
    运营小白超详细三轮面试拿到字节跳动offer
    字节跳动前端日常实习三轮技术面经
    360大数据开发实习面经
    美团大数据开发工程师校招面经
    高级运维工程师的打怪升级之路
  • 原文地址:https://www.cnblogs.com/beryl-z/p/13843667.html
Copyright © 2020-2023  润新知