




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、西 南 交 通 大 学本科毕业设计基于Java的游戏“俄罗斯方块”的设计与实现年 级: 2002级学 号: 20027102姓 名: 赵 凌专 业: 电气工程及其自动化指导老师: 黄 进2006年6月院系 电气工程学院 专 业 电气工程及其自动化 年级 2002级 姓 名 赵 凌 题目 基于Java的游戏“俄罗斯方块”的设计与实现 指导教师评 语 指导教师 (签章) 评 阅 人评 语 评 阅 人 (签章)成 绩 答辩委员会主任 (签章) 年 月 日毕业设计(论文)任务书班 级 电气2002级2班 学生姓名 赵 凌 学 号 20027102 发题日期:2006年 3 月 6 日 完成日期: 6
2、月 20 日题 目 基于Java的游戏“俄罗斯方块”的设计和实现 1、 本论文的目的、意义 本次毕业设计的目的在于学习Java程序设计基本技术,学习用JBuilder开发Java程序的相关技术,熟悉游戏“俄罗斯方块”的需求,熟悉项目开发的完整过程。 通过本次毕业设计,学生应该学会怎样进行一个项目的需求分析、概要设计、详细设计等软件开发过程,熟练地掌握Java程序设计的基本技术和方法,熟练地掌握JBuilder环境的使用方法,培养起初步的项目分析能力和程序设计能力,把理论与实践相结合,为今后工作打下坚实的基础。 2、 学生应完成的任务 学生应完成项目的需求分析、概要设计、详细设计等前期工作,在此
3、基础上,采用基于Java的程序设计技术完成游戏“俄罗斯方块”的基本功能,包括:游戏控制功能(游戏的开始、暂停和恢复),游戏设置功能(设置方块下移速度),游戏排行榜功能(存储成绩)等,最终完成毕业设计说明书的攥写。 3、 设计各部分内容及时间分配:(共 12 周)第一部分 收集相关资料及熟悉开发语言和环境 ( 2 周)第二部分 系统主界面模块 ( 1 周)第三部分 游戏控制模块 ( 3 周)第四部分 游戏设置模块 ( 1 周)第五部分 游戏排行榜模块 ( 1 周)第六部分 毕业设计说明书的撰写、初评、修改及定稿 ( 3 周)评阅及答辩 ( 1 周)备 注 指导教师:黄 进 2006年 3 月 6
4、 日审 批 人: 年 月 日摘 要近年来,Java作为一种新的编程语言,以其简单性、可移植性和平台无关性等优点,得到了广泛地应用,特别是Java与WWW的完美结合,使其成为网络编程和嵌入式编程领域的首选编程语言。JBuilder是Borland公司用于快速开发Java应用的一款优秀的集成开发环境,它以其友好的开发界面、强大的组件支持等优点,得到广大程序员的接受和认可。 “俄罗斯方块”游戏是一个经典的传统游戏,它因操作简单、娱乐性强而广受欢迎。现在,人们已不满足于传统游戏简单的功能,已对该游戏在功能上有了更多的需求。本文基于Java技术和JBuilder开发环境,开发了一个操作简单、界面美观、功
5、能较齐全的“俄罗斯方块”游戏。整个游戏程序分为四个功能模块,九个类模块,实现了游戏的开始、暂停、结束、排名、查看分数排名、游戏级别的设置、分数和级别的显示、新生方块的预览、方块的翻转、方块的移动、方块的直落等功能。通过本游戏的开发,达到学习Java技术和熟悉软件开发流程的目的。本文在介绍Java和JBuilder相关技术和国内外发展现状的基础上,对“俄罗斯方块”游戏的整个生命周期的各个开发阶段进行了详细地介绍。首先,分析了开发本游戏软件的可行性,重点分析本设计所采用的技术的可行性。其次,从游戏主界面、游戏方块下落速度、游戏分数以及游戏排行榜等几方面,分析了本游戏的功能需求;从可使用性和安全性方
6、面分析了属性需求。然后,进行了游戏的概要设计和详细设计,这也是本文的重点。概要设计给出四个功能模块的主框架以及九个类模块的函数调用关系;详细设计介绍了Java2标准运行环境的配置,重点给出各个类模块的程序流程图以及UML图,列表介绍了各个类包含的变量、使用的方法,简单叙述了游戏安装文件的生成,展示了游戏的界面。为了保证程序代码的正确性和功能实现的可靠性,本文还介绍了游戏软件的程序调试和功能测试结果,并且对本设计的成果和不足进行了总结。最后,本文还提出软件的维护措施。关键词:Java;JBuilder;“俄罗斯方块”游戏AbstractRecently, due to its simplicit
7、y, transportability and depend from the platform, the programme language of Java has got popular application especially when it has been combined with WWW as the first-chosen programme language in the field of network programme and programme-embeded. JBuilder is an excellent integrated development e
8、nvironment, which was utilized by the corporation of Borland to design the application of Java and has got extensive recognition among most programmer due to its good design interface, the support of perfect modules and so on. “Russian Blocks”is a classical and traditional game.It is very popular be
9、cause of its simple operation and strong amusement.There has been morerequirement on function of the game that the old function of traditional game has not been enough to people. Based on the Java technology and JBuilder integrated development environment,the paper design a game of“Russian Blocks” w
10、ith simple operation,perfect interface and complete functions. The programme are composed of four functional modules and nine class-modules, all of which will realize the following functions: games begin, pause, end, taxis, examine the mark list in sequence, setup of rank, display of rank and mark,
11、preview of new block, upturn of block, move of block, fall of block and so on.The purpose of developing this game gains the ends of not noly the study of Java technology but also the familiarity of software development process.Based on the introduction of Java and JBuilder technology,this paper spec
12、ifies every process of the lifecycle of the game of “Russian Blocks”.First of all,this paper analyses the feasibility of developing the game software and emphasizes the technical feasibility of the design .Secondly,the requirement on function of this game is analysed on several aspects:the main inte
13、rface of the game,downturn speed of block,score and the game list in sequence and so on.In addition,the requirement on property is also analysed on both usability and security. And then,this paper carries through the general design and the detail design which are the emphases of this paper. Main fra
14、me of four functional modules and the function-called relationship of nine class-modules are shown in the general design;the detail design introduces the configuration of Java 2 Runtime environment,and point out programme flow chart and UML chart of every class module. The detail design also introdu
15、ces the variables and methods included in every class and specifies how to make installation of this game software.The interface of game was displayed in the end of the detail design. In order to ensure correctness of code and dependability of the function,the programme has been debugged,and the fun
16、ction has been tested,and then the fruit and shortage of this design has been summarized. Finally,this paper proposes the maintenance measures of the game software.Key Words: Java;JBuilder;the game of “Russian blocks”目 录第1章 绪论11.1 本设计的目的和意义11.2 国内外研究现状11.3 设计研究的主要内容、目标与工具21.3.1 设计的主要内容21.3.2 设计要达到的目
17、标31.3.3 设计方法介绍3第2章 可行性分析72.1 可行性分析72.1.1 可行性研究的前提 要求 目标 条件、假定和限制82.1.2 对现有软件的分析82.2 所建议的软件92.2.1 游戏处理流程92.2.2 社会可行性分析102.2.3 技术可行性分析 执行平台方面 执行速度方面 语言特性与功能方面 开发环境方面 JBuilder开发工具132.2.4 经济可行性13第3章 需求分析143.1 任务概述143.1.1 目标143.1.2 用户的特
18、点143.2 具体需求143.2.1 功能需求 游戏主界面模块需求 游戏图形区域界面的需求 方块下落速度需求 游戏分数需求 游戏排行榜需求153.2.2 属性需求15第4章 概要设计164.1 游戏功能164.2 功能模块设计164.2.1 总设计模块的划分164.2.2 游戏主界面模块174.2.3 游戏控制模块174.2.4 游戏设置模块184.2.5 游戏排行榜模块184.3 类模块设计194.3.1 类模块之间关系194.3.2 各类模块设计概要194.3.3 类和Java源文件对应关系204.4
19、 程序设计的重点214.4.1 游戏图形界面的图形显示更新功能214.4.2 游戏方块的设计214.5 接口设计224.5.1 外部接口224.5.2 外部接口224.6 维护设计224.7 故障处理22第5章 详细设计245.1 程序主结构245.2 开发环境配置245.2.1 Java2的标准运行环境 J2SE SDK J2SE JRE J2SE Documentation255.2.2 J2SE的安装与配置安装过程 配置环境变量285.3 类模块程序流程图315.3.1 BlockGame类315.
20、3.2 BlockFrame类325.3.3 Square类325.3.4 LevelDialog类325.3.5 Game类325.3.6 Score类345.3.7 SaveScoreDialog类345.3.8 ReportDialog类355.3.9 AboutDialog类355.4 类模块具体设计355.4.1 BlockGame.java程序355.4.2 BlockFrame.java程序3 BlockFrame类程序3 Game类程序3 LevelDialog类程序40 BlockFrame.java的UML图40
21、5.4.3 Score.java程序425.4.4 SaveScoreDialog.java程序435.4.5 Reportdialog.java程序465.4.6 AboutDialog.java程序485.4.7 Square.java程序495.5 安装文件的生成505.5.1 inno setup简介505.5.2 安装文件制作步骤505.6 游戏界面展示54第6章 软件测试586.1 程序代码调试586.1.1 用正常数据调试586.1.2 异常数据调试586.1.3 用错误数据调试586.2 程序功能测试586.2.1 模块功能测试596.2.2 确认测试60第7章 软件维护61结
22、论62致谢63参考文献64附录 “俄罗斯方块游戏”程序源代码65第1章 绪论1.1 本设计的目的和意义 俄罗斯方块游戏具有广泛的用户群,因为它比较简单有趣,无论老少都比较适合。俄罗斯方块的设计对每一个Java语言设计者进行语言提高和进阶都是一个很好的锻炼机会。 俄罗斯方块游戏的设计比较复杂,它涉及面广、牵涉方面多,如果不好好考虑和设计,将难以成功开发出这个游戏。在这个游戏的设计中,牵涉到图形界面的显示与更新、数据的收集与更新,并且在这个游戏的开发中,还要应用类的继承机制以及一些设计模式。因此,如何设计和开发好这个俄罗斯方块游戏,对于提高Java开发水平和系统的设计能力有极大的帮助。在设计开发过
23、程中,需要处理好各个类之间的继承关系,还要处理各个类相应的封装,并且还要协调好各个模块之间的逻辑依赖关系和数据通信关系。正是因为如此,本次毕业设计的目的在于学习Java程序设计基本技术,学习用JBuilder开发Java程序的相关技术,熟悉游戏“俄罗斯方块”的需求,熟悉项目开发的完整过程。学会怎样进行一个项目的需求分析、概要设计、详细设计等软件开发过程,熟练地掌握Java程序设计的基本技术和方法,熟练地掌握JBuilder环境的使用方法,培养起初步的项目分析能力和程序设计能力。 1.2 国内外研究现状 Java是当今企业级计算和应用中相当成熟和稳定的平台,在这个领域中不可否认地占据着领导地位。
24、不但如此,Java在学术界也获得了强有力的支持:在国外的大学中,Java已经成为多数科学研究和计算使用的首选语言;越来越多的尖端学术研究完全使用Java语言;各行业的公司都有很多的Java程序员在开发他们的项目。Java作为软件开发的一种革命性的技术,其地位已经被确立。首先,计算机产业的许多大公司都购买了Java的许可证,包括:IBM、Apple、DEC、Adobe、HP、SiliconGraphics、Oracel、Toshiba以及最不情愿的Microsoft等。其次,众多的软件开发商都支持Java的软件产品。今天是以网络为中心的计算机时代,不支持HTML和Java,应用程序的应用范围就只
25、能局限于相同的硬件平台。Borland公司开发的基于Java的快速应用程序开发环境Latte已在1996年中期发布,Borland公司的这一举措推动了Java进入PC机软件市场。Sun公司自己的Java开发环境JavaWorkshop已经发布。许多知名的数据库厂商都在开发CGI接口,支持HTML和Java。再有,Intranet正在成为企业信息系统最佳的解决方案,而其中Java将发挥不可替代的作用。Intranet的工作方式可以描述为不同类型的Intranet用户通过界面统一的Intranet浏览器访问位于不同环境中的Intranet服务器上的信息。这一过程在基于Java的解决方案支持下实现将
26、使无论是开发人员还是管理人员,抑或是用户都受益无穷。Java语言正在不断地发展和完善,Sun公司是主要的发展推动者。Sun公司开发的较为统用的编译环境有:Java Develop Kit和Java Workshop。还有许多其它公司也开发了或正在开发Java语言的编译器与集成环境。如,Borland公司的JBuilder、Microsoft公司的Visual J+等。随着Java语言的大行其道,Java开发工具也如雨后春笋般纷纷涌现。据一些权威机构的调查,国外Java开发工具已经有上百种之多。这些工具各有侧重点,也各有优势,其中以Eclipse、NetBeans、Rational Develo
27、per和JBuilder最具代表性。与日、韩等国相比,中国的基于Java的游戏市场起步比较晚,但中国有一个巨大的游戏用户群,它拥有广阔的市场前景。随着Java游戏产业发展环境的日益成熟,其发展速度将一日千里。Java是一个受业界重视的、面向对象的语言。它支持继承性、封装、多态性、多线程、动态连接与接口。而Java之所以会赢得专业开发者如此热烈的拥护是因为:首先,Java很像C+,很容易为有经验的程序员掌握使用,但它比C+有很大的改进。Java更容易编写可移植、可重用、无错误的程序。其次,Java的交叉平台的兼容性是它迅速获得成功的主要因素。随着技术的发展,Java语言的正确性与效率都将会有更大
28、的提高,用户用Java编程将会比用能够C+编程更加方便。1.3 设计研究的主要内容、目标与工具1.3.1 设计的主要内容 俄罗斯方块游戏设计与实现,主要分为以下四个模块:游戏主界面模块、游戏设置模块、游戏控制模块以及游戏排行榜模块。实现游戏的开始、暂停、退出、记录分数、游戏方块下落速度调整、游戏新生方块的预览以及游戏排行榜等功能。1.3.2 设计要达到的目标 本次设计要达到的目标分别从以下模块进行阐述:² 游戏主界面模块:游戏的主界面是进入游戏后,能够给玩家第一感官的部分,主要包括游戏图形区域界面、游戏的速度选择更新界面、游戏分数的显示更新界面、新生方块的预览、游戏开始按钮、暂停游戏
29、按钮、退出游戏按钮以及游戏排行榜按钮。从很大程度上决定了玩家对游戏的兴趣问题,因此,游戏的主界面应该力求美观,爽心悦目。² 游戏设置模块、游戏控制模块: 这两个模块是游戏的中心环节,主要完成设置游戏的方块下落速度、显示游戏分数、以及控制游戏的开始、暂停、退出等功能。为了能够给玩家一个很好的游戏环境,这两部分应该做到易懂、易操作。² 游戏排行榜模块: 游戏的排行榜用来显示游戏结束后,玩家所得分数的排名情况。这一模块应该尽量做到美观且准确。1.3.3 设计方法介绍本次设计采用基于Java的程序设计技术,以及用JBuilder开发Java程序的相关技术,其中JBuilder主要用
30、来做游戏的主界面模块。下面简单介绍一下Java和JBuilder开发环境。² Java语言的特点Java 最初叫Oak ,是由Sun公司开发的面向对象的编程语言,从表面上看,它有许多地方和C ,C+类似,但比它们更简洁和更容易设计。1) Java是纯面向对象语言:Java语言不能在类的外面定义数据和函数。所有对象都派生自同一个基类Object,并共享它所有的功能。Java只支持单一继承,但通过接口可支持有限形式的多重继承。 2) 平台无关性:用Java写的应用程序不用修改就可在不同的软硬件平台上运行。平台无关分为两种:源代码级和目标代码级。 3) 分布式:分布式包括数据分布和操作分布
31、。数据分布是指数据可以分散在网络的不同主机上,操作分布是指把一个计算分散在不同主机上处理。 Java支持 WWW 客户机/服务器计算模式,因此,它支持这两种分布性。对于前者,Java提供了一个叫做 URL 的对象,利用这个对象,你可以打开并访问具有相同 URL 地址上的对象,访问方式与访问本地文件系统相同。对于后者,Java的applet小程序可以从服务器下载到客户端,即部分计算在客户端进行,提高系统执行效率。Java提供了一整套网络类库,开发人员可以利用类库进行网络程序设计,方便地实现Java 的分布式特性。 4) 可靠性和安全性:Java最初设计目的是应用于电子类消费产品,因此要求较高的可
32、靠性。Java 虽然源于C+,但它消除了许多C+不可靠因素,可以防止许多编程错误。首先, Java是强类型的语言,要求显式的方法声明,这保证了编译器可以发现方法调用错误,保证程序更加可靠;其次,Java不支持指针,这杜绝了内存的非法访问;第三,Java的自动单元收集防止了内存丢失等动态内存分配导致的问题;第四,Java解释器运行时实施检查,可以发现数组和字符串访问的越界,最后,Java 提供了异常处理机制,程序员可以把一组错误代码放在一个地方,这样可以简化错误处理任务便于恢复。Java通过自己的安全机制防止了病毒程序的产生和下载程序对本地系统的威胁破坏。当Java字节码进入解释器时,首先必须经
33、过字节码校验器的检查,然后,Java解释器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类装载到单独的内存区域,避免应用程序之间相互干扰破坏。最后,客户端用户还可以限制从网络上装载的类只能访问某些文件系统。上述几种机制结合起来,使得Java成为安全的编程语言。 5) 多线程: Java在两方面支持多线程。一方面,Java环境本身就是多线程的。若干个系统线程运行负责必要的无用单元回收,系统维护等系统级操作;另一方面,Java 语言内置多线程控制,可以大大简化多线程应用程序开发。Java提供了一个类 Thread ,由它负责启动、运行、终止线程,并可检查线程状态。Java的线程还包括一组
34、同步原语。这些原语负责对线程实行并发控制。利用Java的多线程编程接口,开发人员可以方便地写出支持多线程的应用程序,提高程序执行效率。² Java平台Java平台是一种全新的软件平台,它主要由两部分组成:Java VM和Java API(应用编程接口)。Java虚拟机是Java平台的核心,它可以用软件实现,也可以用硬件实现。Java虚拟机屏蔽了底层的操作系统,给所有Java程序员一个完全相同的虚拟平台。Java API为Java小应用程序和应用软件的标准接口,是应用开发的基本框架,是开放的和可扩展的。它为各个关键领域规定了一系列的基本接口,让程序员开发Java应用。Java API包
35、括两部分:Java基本API和Java标准扩展API。Java基本API包括了Java语言的基本部分、实用程序、I/O、网络、图形用户接口等。开发多种Java API,使Java成为更强有力的平台。除了已在JDK1.02中发表的标准API外,还开发了JDBC,用来增强Java访问众多不同数据源的能力,从此Java将以统一的接口访问35种以上不同数据源,如Foxpro、Oracle、Sybase、Informix、DB2等等。² Java 开发工具JDK Java 开发工具(JDK)是许多 Java 专家最初使用的开发环境。尽管许多编程人员己经使用第三方的开发工具,但 JDK 仍被当作
36、 Java 开发的重要工具。JDK 由一个标准类库和一组建立、测试及建立文档的 Java 实用程序组成。其核心Java API 是一些预定义的类库,开发人员需要用这些类来访问 Java 语言的功能。 Java API 包括一些重要的语言结构以及基本图形、网络和文件 I/O。一般来说, Java API 的非I/O部分对于运行 Java 的所有平台是相同的,而I/O部分则仅在通用 Java 环境中实现。作为 JDK 实用程序,工具库中有七种主要程序。Javac: Java编译器,将Java源代码转换成字节码。 Java: Java解释器,直接从类文件执行Java应用程序字节代码。 Appletv
37、iewer:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器。Javadoc:根据Java源码以及说明语句生成HTML文档。Jdb:Java试调器,可以逐行执行程序,设置断点和检查变量。Javah:产生可以调用Java过程的C过程,或者建立能够被Java程序调用的C过程的头文件。Javap:Java反汇编器,显示译类文件中的可访问功能和数据,同时显示字节代码含义。² 介绍JBuilder开发环境 JBuilder是最强大的、最易于使用的Java快速开发工具。JBuilder把Java编程语言的威力和图形用户界面化的快速开发环境的易用性有机地结合在一起。 JBuil
38、der的向导可以使创建应用程序、类和工程的过程变得非常简单。设计器与双向开发工具的使用使图形界面的设计变得很容易。 JBuilder中使用GUI环境来创建基于关系数据库的客户机/服务器应用程序。方便地创建类和JavaBean,以提高当前应用程序或小程序的开发进度,并提高以后的工程的性能。第2章 可行性分析随着人们生活水平的不断提高,人们对精神生活水平的要求也随之提高。游戏,不但可以放松身心,有的还可以开发智力。它作为一种娱乐项目也在不断地发展,并在我国逐渐地发展壮大。现在的市场上,已经出现了各种各样,适合不同年龄段和不同人群的游戏。比如:极品飞车、大富翁、魔兽、星际争霸,再比如连连看、蜘蛛牌、
39、扫雷等一些小游戏,都是现在比较受到大家欢迎的娱乐休闲游戏。并且,随着互联网的发展,许多游戏不但有单机版的,而且还有网络版的。迄今为止,游戏产业在我国已经发展为一个庞大的产业,为许多相关行业带来了巨大的经济收益。本次毕业设计所开发的基于Java的俄罗斯方块游戏,具有操作简单,界面较美观等优点,可以作为休闲和智力开发之用,有一定的实用性。下面从几个方面来分析本游戏的可行性。 2.1 可行性分析本可行性分析的目的在于在该项目投资决策前,通过对项目有关工程技术、经济、社会等方面的条件和情况进行调查、研究、分析,对各种可能的技术方案进行比较论证,并对项目建成后的各方面效益进行预测和分析,可行性分析是考察
40、所开发软件的可能性和可行性,继而确定项目投资建设是否可行的科学分析方法。2.1.1 可行性研究的前提 要求² 功能:本设计所开发的是基于Java的一个俄罗斯方块游戏软件,主要实现游戏的开始、暂停、退出、方块下落速度改变以及游戏排行榜等功能,分为: 游戏主界面模块、游戏设置模块、游戏控制模块以及游戏排行榜模块四个模块。² 性能:本软件在设计方面本着方便、实用及娱乐性高的宗旨,在对界面进行设计的过程中,始终坚持清晰明了,在性能方面能够实现效率高,不易出错等优点。 目标² 游戏主界面模块:主要包括游戏图形区域界面、游戏的速度选择更新界面、游戏
41、分数的显示更新界面、游戏方块预览界面、游戏开始按钮、暂停游戏按钮、关闭按钮以及查看分数按钮。游戏的主界面应该力求美观,爽心悦目。² 游戏设置模块:主要用来设置游戏的方块下落速度、显示游戏分数,这部分应该做到易懂、易操作而且准确率高,不易出错。² 游戏控制模块:主要完成控制游戏的开始、暂停、退出等功能,这部分应该做到易懂、易操作而且准确率高,不易出错。² 游戏排行榜模块: 游戏的排行榜用来显示游戏结束后,玩家所得分数的排名情况。这一模块应该尽量做到美观且结果准确。 条件、假定和限制² 硬件配备不齐,内存不够,需升级到512MB。电脑的性能相对
42、不够稳定,对Java和JBuilder等开发工具运行有不利影响。² 可利用的信息和资源比较单一,需求分析主要来源于对学校玩游戏同学的询问,以及自身对俄罗斯方块游戏的体会。而技术方面,对Java编程语言的掌握和JBuilder开发工具的运用还有待提高。其余包括经济效益、社会效益分析则靠网上查阅资料获得。2.1.2 对现有软件的分析经过调查分析,现有的很多单机版的俄罗斯方块游戏存在以下几个不足:² 大多都没有游戏排名这一功能:许多玩家在游戏结束以后都习惯查看自己的分数以及排名,以便下次再进入时有新的目标。而现有的许多单机版小游戏都缺少这一功能,这样的游戏是不完整的,可行性不高。
43、² 采用的编程语言可移植性较差,不能解决平台异构问题:游戏的可移植性直接决定了所开发游戏的用户群大小。现有的很多俄罗斯方块游戏,多不用Java这一平台无关性较好的编程语言来开发。使游戏很难在不同的软硬件平台上运行,给用户造成了一些不便。² 程序的出错率较高:C+有很多不可靠因素,发生许多编程错误。比如:C+中的指针会可能会造成内存的非法访问;大多编程语言没有自动单元收集,不能防止内存丢失等动态内存分配导致的问题;没有自己的安全机制,不能有效防止病毒程序的产生和下载程序对本地系统的威胁破坏。现有的很多单机版的俄罗斯方块游戏已经不能很好的解决用户的需求。基于用户对游戏的更高要求
44、,用Java这种更适合游戏开发的语言,来编写出功能更加完善的俄罗斯方块游戏是非常有必要的。 2.2 所建议的软件 本次毕业设计所涉及和实现的是用Java编程语言和JBuilder开发工具开发的俄罗斯方块游戏。由于采用Java编程语言,解决了一些2.1.2这一目中所叙述的现有游戏的不足。 本次设计的系统环境及工具如下: 运行环境:平台无关的Java 2运行环境 编程语言:Java 使用工具:JBuilder 20052.2.1 游戏处理流程 本次游戏设计的处理流程如图2-1所示。单击“开始游戏”按钮, 游戏开始,方块下落键盘操作: 翻转左移右移向下加速移动没有满行且方块至顶游戏结束单击“退出游戏
45、”退出游戏游戏中途欲中断,稍后继续游戏单击“暂停游戏”游戏暂停进入前十,提示输入姓名进行排名进入游戏画面查看以往排名再次单击开始游戏,游戏恢复图2-1 游戏处理流程图2.2.2 社会可行性分析就大多数玩家而言,由于玩家玩本游戏时,不会也不必关心游戏内部的结构及实现方法,即对用户来说是透明的,所以本游戏对用户而言,是定位在界面友好、操作方便、功能齐全的原则上的,用户只需一台电脑,简单地用鼠标点击各页面上的链接或按钮就能执行相应的功能,从而顺利地上手本游戏。对于游戏软件维护者而言,由于本游戏所运用的开发技术安全性很高,因此本游戏在维护方面也不存在很大问题。2.2.3 技术可行性分析
46、执行平台方面 Java程序具有跨平台的能力,相信这句话对于大多数的程序执行员来说都没有异议。所谓跨平台功能,指的是Java程序可以在不重新编译的情况下,直接运行于不同的操作系统上。这个机制之所以可以运行的原因在于“字节码”与“Java执行环境”的良好配合。Java程序在编写完成之后,第一次使用编译器编译程序时,会产生一个与平台无关的字节码文件,其扩展名为*.class字节码是一种贴近于及其语言的编码,这个文件若要加载到内存中执行,则计算机上必须装有Java执行环境,Java执行环境与平台兼容,会根据该平台对字节码进行第二次编译,而成为平台上可理解的机器语言,并加载到内存中加以执行,如图2-2所
47、示为Java程序执行流程。图2-2 Java程序执行流程Java执行环境是构建于操作系统上的一个虚拟机器,程序设计人员只要针对这个执行环境进行程序设计,而无需理会执行环境如何与操作系统进行沟通的问题。程序设计人员只要利用Java所提供的类别库与API,基本上就可以达到跨平台的目的。程序设计人员与Java执行环境之间的关系如图2-3所示。图2-3 程序设计人员与Java执行环境之间的关系 Java程序若应用在游戏上,有两种显示方式。一种是窗口应用程序,另外一种是使用Applet内嵌于网页之中。本次设计采用的是第二种方式。综上所述,在设计游戏方面,Java将是一个良好的设计平台。 执
48、行速度方面执行速度永远是游戏设计时考虑的一个重要因素,而这也是对Java程序最不利的地方。程序员对Java程序执行速度的普遍评价就是“慢”,这是因为Java程序在执行前必须经过第二次编译,且Java程序只有在需要使用到某些类别库功能时才加载相关的类别,虽然考虑了资源的使用,但动态加载多少造成了执行速度的延迟。后来的Java版本,在编译与加载的速度上作了极大的改善。而且计算机速度的提高也弥补了速度慢的缺点。所以在本次设计中,用Java开发俄罗斯方块游戏在执行速度上影响不大。 语言特性与功能方面Java程序是以C+的关键字语法为基础,但过滤了C+中的一些容易犯错或者忽略的功能,例如指针的运用,并采用“垃圾收集器”机制来管理无用的对象资源。这些都使得Java程序极为容易编写且较不容易发生错误。Java程序无论是在绘图、网络、多媒体等各方面都提供了相当多的资源,使其在游戏开发方
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中职旅游政策与法规课件
- 教育法规在职业教育中的实施与挑战
- 企业安全与数据保护技术应用场景
- 数字化教育背景下教师角色的转变与挑战
- 专题04 荐信 感谢信 倡议书(讲义)(解析版)-2025年高考英语二轮复习
- 教育国际化背景下的培训机构品牌塑造
- 新时代下的基础教育课程改革探讨特别关注未来几年内的发展
- 基础护士眼科常考题库及答案
- 教育建筑中生态屋顶的规划与设计思考
- 2025年四川省泸州市物理高二第二学期期末考试模拟试题含解析
- 遵义市仁怀市选聘城市社区工作者考试真题2024
- 起重作业安全知识考核试题(含答案)
- 2025至2030中国医疗头戴式显示器行业产业运行态势及投资规划深度研究报告
- 枪支安全管理培训课件
- 2025年 江苏苏州昆山国创投资集团有限公司第一期招聘考试试卷附答案
- 医院培训课件:《静脉中等长度导管临床应用专家共识》
- DB65∕T 2810-2009 核桃玛仁糖-行业标准
- 商业银行风险预警系统整体架构设计
- UPVC双壁波纹管
- 型直线振动筛使用说明书中文
- 超市生鲜棚格图分析模板
评论
0/150
提交评论