手机游戏开发手机游戏开发系统毕业设计(本科论文)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
大连交通大学信息工程学院
毕业设计(论文)任务书题目手机游戏开发
大连交通大学信息工程学院
毕业设计(论文)进度计划与考核表
指导教师签字:2012年3月30日
注:“计划完成内容”由学生本人认真填写,其它由指导教师考核时填写。
大连交通大学信息工程学院
毕业设计(论文)调研报告
学生姓名周彦海专业班级软件工程08-2班
指导教师王鑫李孝贵职称高工助教
所在单位信息科学系软件工程教研室
教研室主任刘瑞杰
完成日期 2012 年 4 月 6 日
实习报告
1 课题的来源及意义
手机游戏成绩斐然,成为IT产业中增长最快的部分之一.纵观IT产业的历史,计算机游戏已经成为技术创新背后的动者渴望更加强大的硬件计算能力;渴望不受不同的软件的限制,无论是将图形强制在人工智能(AI)上还是网络安全性。游戏开发者和玩家常常是前沿计算机技术的最早的采用者。由于他们的创新天性,游戏不再是由大型采购公司控制的技术产品。游戏领域总是有充足的空间给那些在这方面有天分的单个创新者。随着技术对游戏经验的促进,游戏市场持续增长。商业IT革命为我们节省了时间力之一。计算机游戏和金钱,从而提高了我们的工作水平,我们因此花费更多的时间和金钱在游戏上,来改善生活的整体质量。甚至在当今困难的经济时代,游戏仍保持快速增长,他仍然是盈利行业的组成部分。Java开发者应该注意到这里蕴藏着的巨大的商机。
2 国内外发展状况
在游戏创意方面我们的国内现状还是没有比国外有过大的差距的。我曾经玩过数字巧克力的一款盖楼的游戏,扎眼一看只是一个搭积木的游戏,但却能让你一连玩几个小时游戏,变化无穷,游戏的设计者花了多少心思在其中可见一斑。而国内我也遇到过类似的例子。如上海幽幽推出的一款名为八卦西游勇闯盘丝洞的游戏,其实这就是一款简单的走迷宫游戏,但是与西游题材相结合后加上搞笑的对白与画面效果是整体游戏便有了一个升华。同样是让人沉迷其中。但是很多这样的游戏并没有变成产品,变成产品的那些一半以上没有上线,上线的那些一半因为制作中的某些环节,也已经面目全非,最初的那点创意根本没有体现出来!所以我们国内根本不缺好的创意,只是种种的原因导致这些创意没有很好的体现出来。所以那“种种原因”才是我们需要关心的。
看看市场上那些取得成功的国产网络游戏,就应该明白,我们并不缺少优秀的程序员。但在手游行业里,我认为,这些程序员的心态出了问题,主观或客观的原因,让他们不能全身心地投入开发。整个行业的急功近利、生产周期的不断压缩、工作中的交流不畅等。国外很多优秀游戏的策划或是制作人本身也是程序员,或者是程序员出身,这种情况在国内还是不多的。
3 系统的功能和组成
在前面的调研中,本系统借鉴了国内外电子商务的发展情况,要设计实现一个手机游戏开发。
1.系统的功能
(1)游戏设置模块
(2)游戏帮助模块
(3)关于游戏模块
(4)游戏开始模块
(5)游戏刷新模块
(6)游戏提示模块
(7)游戏炸弹模块
(8)游戏演示模块
4 本系统采用的解决方法
1. 游戏程序是一项精度要求很高的程序系统,因为其代码利用率很高。一个实时运行的最终作品,每秒都会运行成千上万行程序,绘图事件、键盘事件都会以极高的频率在后台等待响应,若有丝毫的差别都将很容易导致程序在运行不久后可能出现严重错误,甚至死循环。因此,其逻辑设计应当相当严谨,需将所有可能发生的事件及意外情况考虑在设计中。
2. 游戏中为了美观,适用性强,可能需要采用外部文件引入的图片贴图,有关贴图,在MIDP2.0中提供了用于增强游戏功能的game包,使得解决静态或动态、画面背景、屏幕刷新的双缓冲等都有较好的解决方案。
3. 一开始就把图片全部分配好,也可以大大地简化了程序代码的编写。
4. 图片的转化可以用一个函数来实现,这样就可以使代码更模块化,利用也就可以更高。
5. Java是基于虚拟机的半解释型编译系统,其执行效率较C++等完全编译后的程序会低很多,程序如果不进行精简和优化,将可能导致运行的不流畅。除开发过程中对结构上的控制、变量的使用、算法的优化等优化外,还可以使用混淆器(Obfuscator)进行程序打包后的优化。
6. Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。本论文主要用到java里以下各类技术:swing、socket、多线程。
Java Swing是Java Foundation Classes(JFC)的一部分。在Swing中,Sun开发了一个经过仔细设计的、灵活而强大的 GUI 工具包。Swing是在AWT组件基础上构建的。它所提供的功能要比AWT提供的更为广泛。它也是Java技术的一种标准配置。
一个Java GUI通常由顶层容器、中间容器以及多个原子组件组成。每个原子组件或容器都可能触发相应事件的产生。容器是一类能够在其中容纳其他组件的特殊组件。Swing的GUI 组件类是按照类属层次以树状结构进行组织的。在这个树的最顶层,即树的根部,使一个最基本的容器类,被称为顶层容器。Swing 提供了三个通用的顶层容器类JFrame,JDialog和JApplet。JFrame提供了基于窗体的应用程序,JDialog提供对话框形式的界面,JApplet提供Java小应用程序的界面形式。在顶层容器下是中间容器,用于容纳其他的组件。通常窗格本身在显示界面中是看不到的。面板类Panel是一种中间容器,它的唯一作用是使组件更容易定位。顶层容器通过getContentPane()方法获取内部的一个内容窗格。
Swing包的组成:
Javax.swing:基本Swing包,包括Swing容器、组件及相关设置的类和接口。
Javax.swing.border:包括与边界设计相关的类和接口。
Javax.swing.colorchooser:与颜色选择相关的类和接口。
Javax.swing.event:包括事件处理相关的类和接口。
Javax.swing.filechooser:包括对文件进行查看选取的相关类。
Javax.swing.plaf:包括一些对外观样式操作的类和接口。
javax.swing.tree:包括对树形组件进行操作的类和接口。
Java是纯面向对象语言,因此,Java的线程模型也是面向对象的。Java通过Thread类将线程所必须的功能都封装了起来。要想建立一个线程,必须要有一个线程执行函数,这个线程执行函数对应Thread类的run方法。Thread类还有一个start方法,这个方法负责建立线程,相当于调用Windows的建立线程函数CreateThread.当调用start方法后,如果线