常州大学本科生毕业设计(论文)
2可行性研究
2.1设计的目的
通过本游戏的设计,综合自己在校期间所学的理论知识,设计开发吃豆子游戏,使自己熟悉应用系统的开发过程,培养独立思考能力,检验学习效果和动手能力,初步掌握软件工程的系统理论,进一步巩固和加强自身对java基础知识的理解,提高自己的编程水平,从而达到理论与实践相结合的目的。 2.2 本设计的问题定义
基本要求:本游戏开发的总体任务是实现游戏的可操作性,以及界面的美观性。整个开发过程遵循软件工程规范,采用Java Apple[6]t编程来实现界面以及事件的控制,用户根据键盘的四个方向键控制翻转、向左、向右和向下操作,通过菜单栏中的相应菜单选项实现游戏的开始、结束、变换方向、积分等功能。
目标:通过本游戏的开发,主要实现游戏的可操作性以及美观性,同时使自己对Java语言的了解更进一层,为将来的实际工作打下坚实的基础。
条件、假定和限制:由于知识以及能力的限制,本游戏所实现的功能不够强大,可对本游戏进行改善,从而增强游戏的功能。
评价尺度:由于本软件是一个初级产品,对其要求不是太苛刻,所以能够达到吃豆子游戏的一般功能即可。 2.3可行性分析 2.3.1技术可行性
面向对象是一种认识世界的方法,是一种程序设计方法。面向对象的观点认为,客观世界是由各种各样的实体,即对象组成的。每种对象都有自己的内部状态和运动规律,不同对象间的相互联系和相互作用就构成了各种不同的系统,并进而构成整个客观世界。按照这样的思想设计程序,就是面向对象的程序设计。
面向对象的程序设计吸取了结构化程序设计的先进思想,并把它们同几个支持用户用新方法进行程序设计的有力概念结合在一起。
所有面向对象的程序设计语言一般都包含三个概念:封装、多态性和继承性。 这种方法要求语言必须具备抽象、封装、继承和多态性这几个关键要素。
面向对象的程序设计,是通过数据和代码建立分块的内存区域,以便提供对程序进行模块化的一种程序设计方法,这些模块可以被用作样板,在需要时再建立其副本。
C++[7]和Java在面向对象这方面比VB要强,所以我排除了用VB做的可能性。但是C++主观上在校期间学校并没有这方面的授课内容,虽然自学了一些内容,对C++也有一定了
第 4 页 共41页
4
常州大学本科生毕业设计(论文)
解,但是若用C++实现,必定是基于windows[8]应用程序的Visual C++设计,对于windows编程,我还有待提高,而根据课题要求Java Applet能够满足网页小应用游戏的设计要求的掌握,因此综合考虑,决定采用Java语言编写吃豆子游戏。 2.3.2操作可行性
本课题设计的游戏需要在页面上打开,由此我们选择使用Java Applet来编写吃豆子游戏的代码。同时,选择Eclipse为本课题的开发工具是因为它含有大量的开发爱好者为其开发新的插件。前几种主流IDE的功能差别并不算大,针对不同的应用需求,开发者会选择最适合当前应用需求的开发工具来进行开发,实际上大多数的需求并没有对IDE提出太多的要求,既然Eclipse功能并不比别的IDE差,而且它是免费的。Eclipse集成了不同的软件开发工具产品,用户可以通过相同的接口使用不同的开发工具,这样以针对开发者自身的具体情形定制自身开发需要的工具,将更有利于本课题的开发。
3.设计所用软件及环境
3.1 Java语言简介
a) Java语言的历史
Java的诞生主要得益于对家用电器的芯片的研制。开始时,开发者想用C++语言来开发电器的芯片,但是,由于芯片的种类各不相同,因此,程序要进行多次编译。尤其是C++中的指针操作,稍有不慎,就会引起问题。程序可以出错误,但是家用电器不能出错误。为此,开发者将 C++[9]语言进行简化,去掉指针操作,去掉运算符重载,去掉C++中的多重继承,得掉了Java语言,将它变为一种解释执行的语言,并在每个芯片上装上一个Java语言虚拟机。刚开始时Java语言被称之为Oak[10]语言(橡树语言)。 WWW(万维网)的发展则进一步促进了Java的应用。刚开始时,WWW的发展比较缓慢,每个网页上面都是静态的画面,不能与用户进行动态交互操作。即使是后来的CGI(通用网关接口)也只有在服务器端运行,速度太慢,人们迫切需要能够在浏览器端与用户进行交互,并且使画面能够动起来,但是,WWW上的计算机各种各样,操作系统也是千差万别,后来人们想到了Oak语言,他是解释型执行语言,只要每台计算机的浏览器能够有他的虚拟机,Oak语言语言就可以运行,因此Oak语言发展起来,后来改名为Java语言,成为当前网络的流行的开发语言。
Java语言现在逐渐成熟起来,它的类已接近千个,无所不包,而且还可以通过第三方购买中间件,为Java语言的发展提供了良好的发展前景。同时它也是跨平台的语言,因此许多软件开发商及硬件开发商业争先恐后地想搭上Java语言的开车,都声称支持Java语言。
b) Java语言的优点
第 5 页 共41页
5
常州大学本科生毕业设计(论文)
①简单易学:Java语言虽然起源于C++,但是去掉了C++语言中难于掌握的指针操作,内存管理非常简单,如果要释放内存资料,你仅需要让其对象的引用等于null,这样就是操作变得异常简单。
②面向对象:Java是面向对象的编码语言。面向对象技术较好地解决了当今软件开发过程中新出现的种种传统面向过程语言所不能处理的问题,包括软件开发的规模扩大,升级加快,维护量增大以及开发分工日趋细化、专业化和标准化等。面向对象技术的核心是以更接近于人类思维的方式建立计算机模型,它利用类和对象的机制将数据与其上的操作封装在一起,并通过统一的接口与外界交互,是翻译现实世界实体的各个类在程序中能够独立、自治和继承。
③分布式:Java包括一个支持HTTP(超文本传输协议)和FTP(文件传输协议)等基于TCP/IP协议的子库。因此,Java应用程序可凭借URL[11](统一资源定位符)打开并访问网络上的对象,其访问本地文件系统几乎完全相同。为分布环境尤其是Internet提供动态内容无疑是一项非常宏大的工程,但Java的语法特性可很容易地实现这项目标。
④健壮性:Java致力于检查程序在编译和运行时的错误。类型检查可以检查出许多开发早起出现的错误。Java自行操纵内存,减少了内存出错的可能性。Java还实现了真数组。避免了覆盖数据的可能。这些功能特征大大缩短了开发Java应用程序的周期。Java提供Null指针检测数组便捷,进行异常出口字节代码校验。
⑤安全稳定:对网络上应用程序的里一个要求是较高的安全可靠性。用户通过网络获取并在本地运行的应用程序必须是可信赖的,不会充当病毒或者其他恶意操作的传播者而攻击本地的资源,同时它应该是稳定的,轻易不会产生死机等错误,使得用户乐于使用。 ⑥平台无效性:Java[2]语言独特的运行机制使得它具有良好的二进制级的可移植性,利用Java,开发人员可以编写出与具体平台无关,普通适用的应用程序,大大降低了开发、维护和管理的开销,也就是一次编译,随处运行。
⑦支持多线程:多线程是当今软件开发技术的又一重要成果,已成功应用在操作系统和应用开发等多个领域。多线程技术允许同一个程序有两个或两个以上的执行线索,即同时做两件或多件事情,满足了一些复杂软件的需要。Java不但内置多线程功能,而且定义了一些用于建立、管理多线程的类和方法,使得开发具有多线程功能的程序变得简单、容易和有效。
⑧高性能:如果解释器速度不慢,Java可以在运行时直接将目标代码翻译成机器指令。Sun用直接解释器一秒钟内可调用300000个过程。翻译目标代码的速度与C/C++的性能没审美区别。
⑨动态性:Java的动态特性是其面向对象设计方法的扩展,它允许程序动态地装入运
第 6 页 共41页
6
常州大学本科生毕业设计(论文)
行过程中需要的类。Java编译器将付好引用信息转换为数值偏移量。这样,一个存储器生成的对象不在编译过程中决定,而是延迟到运行时由解释器确定,这样对类中的变量和方法进行更新时就不至于印象现存的代码。解释执行字节码时,这种付好信息的查找和转换过程仅在一个新的名字出现时才进行一次,随后代码便可以全速这型。在运行时确定引用好处是可以使用已被更新的类,而不必担心会影响原有的代码。
c) Java虚拟机(JVM)[12]
Java程序要想运行,必须有Java虚拟机(JVM)。Java虚拟机是编译后的Java程序和硬件系统之间的接口,我们可以把Java虚拟机看成是一个虚拟的处理器,它可以执行编译后的Java指令,还可进行安全检查。Java虚拟机是在一台真正的计算机上用软件方式实现的一台假想机,其使用的代码存储在.class文件中。这样一来,利用Java虚拟机也便实现了与平台无关的特点,Java语言在不同平台上一年行驶不需要重新编译。Java虚拟机在执行字节码时,将其解释为具体平台上的机器指令执行。
因为Java的实用性强,优点多,所以针对现在多种多样的开发语言,利用Java语言来开发我们的游戏是个比较好的选择。 3.2 Eclipse基础
a) Eclipse简介
Eclipse是目前最流行的Java继承开发环境(IDE)[14],其集成的JDT Java编写、编译、调试环境在易用性、便捷性及效率方面已经远远超过了Borland的JBuilder,而且Eclipse由于其开源,免费获取及高扩展性的支持,使得从事Java开发的程序员和企业可以轻易获得Eclipse,而不像JBuilder一样需要支付使用费用,使用Eclipse来做日常开发支持。 作为Java集成开发环境(IDE),Eclipse作为Java的主流开发工具的地位在2005年就已经确立。除此之外,Eclipse平台是一个成熟的、精心设计的及可扩展的体系结构。Eclipse的价值还在于它为创建可扩展的集成开发环境提供了一个开放源代码的平台。Eclipse目前主要由4个项目组成,分别是Eclipse项目、Eclipse工具项目、Eclipse技术项目以及Eclipse Wwb工具平台项目,每个项目有一个项目管理委员会监督,使用GPL 1.0协议。Eclipse工具项目的主要任务是为Eclipse平台生产最好的构建工具;Eclipse技术项目的主要任务是考虑到Eclipse今后的发展,为平台培养后续的接班人;Eclipse Web工具平台项目的主要任务是提供更好的Web开发的平台以及工具。
b) Eclipse的体系结构
Eclipse体系结构的核心是动态发现插件。Eclipse由一个很小的核心和大量建立在核心之上的插件组成,核心本身仅仅负责基本环境的后台处理工作和提供标准的用户导航模型,而插件则专注于自身任务的处理。基于如此优良的设计及体系结构,就可以用插件在Eclipse
第 7 页 共41页
7
相关推荐: