软件工程课设Word格式文档下载.docx
- 文档编号:16144198
- 上传时间:2022-11-20
- 格式:DOCX
- 页数:30
- 大小:418.22KB
软件工程课设Word格式文档下载.docx
《软件工程课设Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《软件工程课设Word格式文档下载.docx(30页珍藏版)》请在冰豆网上搜索。
2.1.1技术可行性6
2.1.2经济可行性6
2.1.3操作可行性7
3、项目设计的基本原理和采用的主要方法与技术7
3.1设计基本原理7
3.2主要方法和技术7
3.2.1键盘监听7
3.2.2重绘7
3.2.3形态方块的数组设置7
3.2.4定时器设置线程7
3.2.5方块的变形与消行8
4.总体设计8
4.1总体设计方案8
4.2模块设计图8
4.2.1MVC设计模型图8
4.3模块说明8
4.3.1模型层功能模块设计9
4.3.2视图层功能模块设计9
4.3.3控制层功能模块设计10
5.详细设计10
5.1模型层设计11
5.1.1产生图形11
5.1.2产生地图11
5.2视图层设计12
5.2.1方块的显示13
5.2.2分数的显示13
5.3控制层设计14
5.3.1方块的移动与变形15
6.编码实现17
6.1游戏界面演示18
6.2消行并得分演示18
6.3游戏结束演示19
7.测试用例设计、测试与运行记录19
7.1
游戏界面菜单选项的功能测试20
7.1.1“游戏”菜单测试
20
7.2
按键事件的功能测试
7.2.1
方块移动测试
7.2.2
方块反转测试
7.3方块堆砌与消行测试
7.3.1
底层碰撞
21
7.3.2
满行消除
7.4
测试结果分析
8.课程设计完成结果分析与个人小结21
参考文献:
致谢22
附录23
俄罗斯方块游戏实现
陆嘉纯
南京信息工程大学滨江学院计算机系,江苏南京210044
摘要:
在现今电子信息高速发展的时代,电子游戏已经深入人们的日常生活,成为老少皆宜的娱乐方式。
但是游戏设计结合了日新月异的技术,在一个产品中整合了复杂的设计、艺术、声音和软件,所以并不是人人皆知。
直到今天,在中国从事游戏设计的人仍然很少,但是游戏行业的发展之快,远超如家电、汽车等传统行业,也正因为如此,游戏人才的教育、培养远落后于产业的发展。
俄罗斯方块是个老少皆宜的小游戏,它实现由四块正方形的色块组成,计算机随机产生不同七种类型的方块,根据计算机时钟控制它在一定的时间不停的产生,用户根据键盘的四个方向键控制翻转、向左、向右和向下操作,然后程序根据这七种方块堆叠成各种不同的模型。
关键词:
俄罗斯方块;
数据结构;
Java
RealizationOfTheGameTetris
MattJason
DepartmnetofComputer,BinjiangCollege,NUIST,Nanjing210044,China
Abstract:
Inthecurrenterawithrapiddevelopmentofelectronicinformation,electronicgameshavebeendeeplyPeople'
sDailylife,becometheentertainmentforyoungandold.
Butthegamedesigncombinedwiththeever-changingtechnology,integratesthecomplexinaproductdesign,art,sound,andsoftware,sonoteveryoneknows.
Untiltoday,peopleinChinatoengageingamedesignisstillveryfew,butthegameindustry,therapiddevelopmentoffarbeyondtraditionalindustries,suchashouseholdappliances,automobile,alsobecauseofthis,thegameoftalenteducationandtrainingisfarbehindthedevelopmentoftheindustry.
Tetrisisagameforyoungandold,itiscomposedoffoursquareofcolorpiece,thecomputerrandomlygeneratedifferentseventypesofsquare,accordingtothecontrolitinacertainamountoftimeonthecomputerclock,usersaccordingtothefourkeyboarddirectionkeycontrolflip,left,rightanddownoperation,thentheprogramaccordingtothesevensquaresstackintoavarietyofdifferentmodels.
Keywords:
Tetris;
DataStructure;
1.课程设计概述
设计俄罗斯方块游戏程序,用户可以通过平移和转动自动落下的不同形状物体,填满一行来得分。
开发智力和反应能力。
(1)界面的左侧是游戏区域。
新的图形会在顶部刷新,并且自动下落,可以通过方向左右键平移和方向上键顺时针旋转来控制图形落下的位置。
(2)界面的右侧是选项和显示区,显示现在的得分,以及开始游戏、暂停游戏、结束游戏按钮。
2.项目的可行性研究与需求分析
2.1项目可行性研究
2.1.1技术可行性
该程序是由Java语言实现,Java是由Sun
Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。
用Java实现的Hot
Java浏览器(支持Java
applet)显示了Java的魅力:
跨平台、动态的Web、Internet计算。
从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java
applet。
另一方面,Java技术也不断更新。
1991年,Sun公司的James
Gosling。
Bill
Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个Oak(一种橡树的名字)软件,他是Java的前身。
当时,Oak并没有引起人们的注意,直到1994年,随着互联网飞速发展,他们用Java编制了HotJava浏览器,得到了Sun公司首席执行官Scott
McNealy的支持,得以研发和发展。
为了促销和法律的原因,1995年Oak更名为Java。
Java分为三个体系JavaSE(Java2
Platform
Standard
Edition,java平台标准版),JavaEE(Java
2
Platform,Enterprise
Edition,java平台企业版),JavaME(Java
Micro
Edition,java平台微型版)。
Java平台由Java虚拟机(Java
Virtual
Machine)和Java
应用编程接口(Application
Programming
Interface、简称API)构成。
Java
应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
Java语言是一个支持网络计算的面向对象程序设计语言。
Java语言吸收了Smalltalk语言和C++语言的优点,并增加了其它特性,如支持并发程序设计、网络通信、和多媒体数据控制等。
2.1.2经济可行性
本系统开发应用之后主要用于游戏的实现,有开发周期短和高效率等优点。
基于Java语言开发,开源免费,因此该项目的开发成本很低,从这一点上来说,该系统经济上可行。
2.1.3操作可行性
由系统分系可以看出本程序的开发在技术上具有可行性。
首先游戏对所要求的软、硬件的最低配置现在大多数的用户用机都能达到。
现有的开发工具和技术完全能够实现。
本程序对用户没有任何的特殊要求,实际操作基本上以键盘操作为主并辅以少量的鼠标操作,操作方式很方便。
因此该项目具有良好的易用性。
3、项目设计的基本原理和采用的主要方法与技术
3.1设计基本原理
首先定义一个三维数组分别存放方块类型(包括7种:
S、Z、L、J、I、O、T),用0和1代表当前方块是否显示。
其次在窗体中添加地图,并设置边框的数值为2以作区分,对方块与地图进行碰撞检测,触碰左右边界则设置不得越界,触碰底边则另其停止移动。
通过按键监听事件获得对键盘事件的监听来控制方块的移动与变形。
若最下面一行的方块数值均为1则进行置0并获得游戏加分。
3.2主要方法和技术
3.2.1键盘监听
通过KeyListener中的KeyAdapter来进行对键盘的行为操作的时间监听,以此改变方块的位置和形态。
3.2.2重绘
重构paint方法已实现对人机界面的panel重绘,将帧数画布变成连续的动画,形成方块下落过程。
3.2.3形态方块的数组设置
普通的一、二维数组难以实现多种方块的形态构成及变化,因此创建一个四维数组容器来放置多种形态方块。
第一维代表方块类型(包括7种:
S、Z、L、J、I、O、T),第二维代表旋转次数,第三四维代表方块矩阵。
3.2.4定时器设置线程
设置一个Timer来创建Thread,控制方块的下落速度。
3.2.5方块的变形与消行
通过形态方块的数组设置来实现方块是否显示,变形是对显示方块的数值进行置0或1,而消行则是将数值置0进行消行。
4.总体设计
4.1总体设计方案
本游戏设计按照MVC设计模式,将游戏的输入、处理、输出流程按照Model、View、Controller的方式进行分离,即将游戏划分成三个模块:
模型层、视图层、控制层。
4.2模块设计图
4.2.1MVC设计模型图
4.3模块说明
4.3.1模型层功能模块设计
4.3.2视图层功能模块设计
4.3.3控制层功能模块设计
5.详细设计
5.1模型层设计
5.1.1产生图形
首先创建方块的数据结构,定义一个4*4的矩阵,共16个小格。
用0和1来表示当前方格是否显示,由此可以绘制多种图形。
5.1.2产生地图
与方块的数值不同,在窗体四周绘制一圈方块,并设置每个块的值为2,以作区分。
5.2视图层设计
5.2.1方块的显示
根据nextBlock方法来产生随机数,获取一个随机图形,进行显示。
然后根据paint方法来进行画面的绘制。
5.2.2分数的显示
在游戏主界面的旁边加上分数字符串,以来显示玩家的得分。
5.3控制层设计
5.3.1方块的移动与变形
通过控制按键来实现方块的移动,继承KeyListener来对键盘事件进行监听。
按下上键,实现turn方法,进行方块的state改变,则进行变形操作;
按下下键,实现down方法,对方块的l
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程