结对项目
一. 《贪吃蛇》课程设计报告
接对人链接:http://www.cnblogs.com/kongxiangyu/p/4492396.html
二. 贪吃蛇Github链接:https://github.com/wanghailing/test/blob/master/tanchishe
三.测试模块分析及运行结果截图
3.1贪吃蛇游戏设计与实现,主要分为以下二个模块:游戏主界面模块和游戏控制模块。在此只实现游戏的游戏主界面模块、游戏控制模块。并且只是实现移动速度、暂停、重新开始等功能。
游戏主界面模块:
游戏的主界面是进入游戏后,能够给玩家第一感官的部分,主要包括游戏图形区域界面、游戏的速度选择更新界面、新生方块的预览、暂停游戏按钮、重新开始游戏按钮。从很大程度上决定了玩家对游戏的兴趣问题,因此,游戏的主界面应该力求美观,爽心悦目。
游戏控制模块:
这个模块是游戏的中心环节,主要完成控制游戏的开始、暂停、重新开始等功能。为了能够给玩家一个很好的游戏环境,这部分应该做到易懂、易操作。
本设计所开发的是基于Java的一个贪吃蛇游戏软件,主要实现游戏的速度控制、游戏的暂停、游戏的退出等功能,分为: 游戏主界面模块、游戏控制模块以二个模块。
3.1.2程序概述
本程序是一个利用Java应用软件制作的贪食蛇小游戏。在游戏过程中,用户通过点击小键盘区的方向键来控制蛇的运行方向;游戏运行过程中,如果想暂停,只需要按F3键即可。重新开始游戏的按键为F2。当蛇没有吃到食物且碰到墙壁或自己的身体时游戏结束。
本程序的另一个功能是在程序运行窗口的左上角显示,用户在游戏过程中的移动和长度。
3.1.3程序流程图
本次游戏设计的处理流程如图1所示。
3.1.4 总设计模块的划分
根据游戏需求中游戏所要实现的功能,整个游戏分为二个模块进行具体的设计,如图2所示。
游戏控制模块的主要框架如图3所示。
。
游戏暂停控制:点击“F3”按钮,游戏暂停;再单击,游戏继续。
游戏重新开始控制:点击“F2”键后,点击确定,即游戏重新开始。
游戏退出控制:点击“F4”键好,点击确定,退出游戏界面。
3.1.5类、方法、属性说明
(1)成员变量
表1 主要成员变量(属性)
成员变量描述 |
变量类型 |
名称 |
文件菜单中子菜单“新建” |
JMenuItem |
mFile_New |
编辑菜单中子菜单“撤消” |
JMenuItem |
mEdit_Undo |
格式菜单中子菜单“颜色” |
JMenu |
formatMenu_Color |
帮助菜单中子菜单“帮助主题” |
MenuItem |
mHelp_HelpTopics |
(2)方法
表2 主要方法
方法名 |
功能 |
备注 |
Notepad4() |
描述记事本 |
无 |
Text.setBackground(Color.black) |
设置编辑区默认背景色 |
无 |
Text.setForeground(Color.black) |
设置编辑区默认前景色 |
无 |
3.1.6设计结果与分析
本程序在运行后,能够正常的相应按键事件。由于程序的主要部分已经集成为一个对象SnakeModel,所以利用键盘就可以实现操作。蛇前行的过程中,可以任意向其左或右方向改变方向。点击F3键后游戏就暂停了。点击F2键游戏重新开始。点击F4游戏退出。运行结果如下图4所示:
当蛇没有吃到食物且碰到边界或碰撞到自己的身体时,游戏结束。如果想重新开始即点击“确定”后按F2键,运行结果如下图5所示:
四.心得体会
通过这次课程设计,我跟结对人孔祥玉对这学期所学的JAVA语言程序设计有一个更深刻的了解,将所学的知识应用于实践,由于所学知识有限,为了使游戏能够实现自己预先的构想,我们俩通过上网和去图书馆找程序,比较好的流程图及功能模块,不断阅读修改代码使程序达到预期所要实现的目标,我负责写程序,孔祥玉一旁查资料,并且观察我写代码是否规范,一边给我提出错误,解决问题,我也从中学会了很多。完成课程设计后,可以感觉到自己对Java程序的又有了新的认识。总之,通过本次的课程设计,使我平时学到的理论知识得到了很好地升华,理论与实际得到一次很好的结合,为我今后参加工作打下了坚实的基础,使我受益匪浅。而且我体会到两个人合作完成一个程序,真的需要很多耐心和配合,感谢老师给我们这个机会,我会好好加油的