软件工程第二次大作业之打砖块小游戏设计与编码实现
成员组成
杨 阳 0491201 2012211869 主要负责游戏算法设计和编码
张笑谋 0491201 2012211683 主要负责游戏框架设计、项目整体进度管理和后期调试
目标及成果
关于本次两人项目,我和我的队友认为关键目的是使我们 通过此次两人项目的开发,使得我们对软件工程的目标、软件工程的过程、软件工程的了解有一个基本的了解而不是炫耀技术。在开发的过程中去学习两人合作跟以前一人完成任务的不同,初步了解软件工程开发模型并选择最适合的模型完成本次项目。虽然本次开发的是一个很小的小游戏,但是通过此次开发我们对整个软件生命周期有了一个比较透彻的认识,我们两个人以前都没有接触过团队项目,基础也比较差,所以我们经过商量最终将需求分析、设计、实现、测试、发布完整的流程进行了一遍。
二.具体开发阐述
1)选题背景
一开始老师说要编写3D的游戏,我就去看了一下时下比较火的3D游戏开发引擎。自学了一段时间的UNITY3D。不过我们发现要从头自己原创一个3D游戏一两个月的时间根本不够。不过使用引擎开发确实能做出很多华丽的效果。权衡利弊后我们还是决定退而求其次选择了原生API。我想做这个游戏不是为了炫耀技巧什么的,关键是从中学到东西,对整个软件开发工程有一个大致的了解。于是我选择了打方块这个小游戏,至于为什么选择这个游戏嘛,最近看了一部电影《乔布斯》,里面讲了乔老爷子创业的时候坑了自己队友5000美元,就是那个经典的小游戏打方块。刚好自己也在自学java,里面有很多类很多方法。于是在此软件工程大作业和队友商量了一下我们决定做一个打方块的小游戏,巩固一下自己新学的东西。通过本次开发我们对软件开发周期有了一个大致的了解,至少现在我们知道了开发一个小软件不是光敲敲代码就行的,前期的分析和设计的重要性远远高于具体编码。
2)实现相关技术概述
a) 利用java面向对象编程思想实现
b) 界面编写方面是采用了比较原始的Swing编程
c) 自己设计算法,对游戏的运行逻辑进行描述
d) 利用Timer类实现对游戏界面的刷新
e) 使用Grahpics绘制游戏运行时的图形
3)项目进程概述
a).游戏运行逻辑设计
b).游戏主界面设计和主要算法设计
c).编程实现预设计
d).调试程序,更改设计
e).代码复审,最终测试,打包为.exe程序
4)开发过程详述
1.需求分析
利用所学软件工程、编程相关知识完成一个小游戏的开发,而且想要通过团队合作的形式理解软件开发过程,这个小游戏就应该具备一定的可玩性、美观 性。对此我们模仿了经典游戏打方块,利用java编程来实现。
2. 游戏运行逻辑设计
打方块游戏我记得自己很小的时候在黑白机上面玩过,结合网上的一些资料我们队自己的小游戏运行逻辑设计如下:玩家通过键盘上的左右按键来控制屏幕底部的挡板 防止球击到底部。当小球运行到上部方块区域时碰到不同颜色的方块,方块消失并得分,知道最后将所有的方块清除变为胜利。
类名称 |
BricFrame |
|
类描述 |
游戏主界面类。完成打方块的界面的绘制。该类继承JFrame。 |
|
包描述 |
Main |
|
函数描述 |
|