手机吞吃蛇游戏的设计与开发

为什么80%的码农都做不了架构师?>>>   hot3.png


 J2ME(Java 2 Micro Edition) 是近年来随着各种不同设备,尤其是移动通信设备的飞速发展而诞生的一项新的开发技术。它定位在消费性电子产品的应用上,对设备的智能化、www.21cnlunwen.com Write Once, run anywhere”的Java特性而提高开发的效率。
随着手机的日益普及、JAVA功能在移动设备上的实现,JAVA应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。本文主要介绍了一款手机吞吃蛇游戏,本设计着眼于J2ME技术的应用,采用JDK1.6,NetBeans 5.5作为开发工具,使用WTK2.5作为模拟器测试,开发一款吞吃蛇的手机游戏程序。本程序将老少皆宜的经典作品移植到手机上来,为更流行的硬件平台提供应用软件。这些都将能很好的满足未来人们对手机游戏的需求。吞吃蛇游戏基于JAVA平台编写,满足一般手机用户的娱乐需求。
关键词: J2ME;手机游戏;Java,吞吃蛇


手机吞吃蛇游戏系统分析
2.1系统需求分析
2.1.1游戏背景
贪吃蛇,是个简单的小游戏,但却能给人以放松,让我们从繁重的日常生活中解脱出来.而只有我们的身心得到了娱乐才能更好的投入到新的工作.现在的人,不管是已经工作的,还是还未进入社会的学生,都面临着很大的压力,而这样一款能让我们随时随地都能享受的游戏,其魅力还是不可估量的.
贪吃蛇,之所以取这样的名字,去用意还是很明显的.贪吃蛇其实并不贪,它是人不断向前追求的象征.就像现代的人只有不断努力向前才能得到自己想要的.而食物也是随机出现的,就像现在社会存在的机会,而我们只有找好自己的目标才能成功.
虽然现在市面上存在着各种各样的游戏版本,可是贪吃蛇其市场还是相当大的.因为它的特殊在于它能吸引人更深入,爱不释手.随着游戏速度不断加快,其刺激性也更强.
可以说该游戏的优势在于它的简单易行,不论是手机,还是小游戏机,都能很快顺利的运行.对于在外忙碌的人,不可能花费大量时间在娱乐上,大型游戏是行不通的,这样的小游戏刚好迎合了他们的需求.
手机吞吃蛇游戏基于JAVA平台编写,采用J2ME技术开发的一款手机游戏。手机游戏程序是一项精度要求很高的程序系统,因为其代码利用率很高。一个实时运行的最终作品,每秒都会运行成千上万行程序,绘图事件、键盘事件都会以极高的频率在后台等待响应,若有丝毫的差别都将很容易导致程序在运行不久后可能出现严重错误,甚至死循环。因此,其逻辑设计应当相当严谨,需将所有可能发生的事件及意外情况考虑在设计中。JAVA是基于虚拟机的半解释型编译系统,其执行效率较C++等完全编译后的程序会低很多,程序如果不进行精简和优化,将可能导致运行的不流畅。游戏的结束、开始、动态信息画面作为构成一个程序都是必不可少的重要部分。良好的用户界面更是吸引用户的硬指标,相关的美术构图和人性化设置也需要有一定的考虑。
2.1.2游戏功能
本游戏对游戏声音的控制、游戏等级的控制、最高分的记录、游戏暂停、游戏重新开始、游戏结束这些功能都要求能在手机模拟器上运行。
贪食蛇的玩法很简单,用键盘上的方向键控制贪食蛇的运动方向,游戏的目的是控制贪食蛇吃掉更多的食品,但是不能碰到四周的墙壁,也不能让贪食蛇的首尾相接,否则游戏失败。游戏最终是要在手机上允许。能够使用键盘控制贪食蛇的运动,生成新的点,并且能够根据点数进行记分.
2.1.3游戏的操作性要求:
易于学习: 既然手机游戏面向的是普通消费者而不是计算机专家,那么他们不可能深入的学习游戏技巧。消费者不会花几个小时去研究一个3元的手动操作的游戏。保持游戏的简单是最基本的要求。
可中断性: 多任务处理是手机生活方式的基本特征。手机用户常常在任务(如等一个电子邮件或者等车)之间有一小段时间。而游戏、日历管理、通讯和工作数据访问使用的是同一个设备。所以一个好的手机游戏应该提供短时间的娱乐功能,并且允许用户在游戏和工作模式之间顺利切换。2.1.4 游戏的实用性 丰富的社会交互: 不管一个游戏设计得多好,只要玩家找到了它的根本模式或者玩完了所有的游戏路径很快就会厌烦这个游戏。重要的是与别的玩家合作以增强所玩游戏的智力和随机性。在今天纷繁复杂的多玩家游戏中具有丰富社会交互的游戏证明是成功的。
2.2系统设计目标
2.2.1游戏设计思想
本科期间做过很多课程设计,大多规模很小。在数据库、各种应用软件和游戏中,我仍觉得对游戏的设计有极大的热情。因为其各个模块间的联系十分紧密,代码重复执行率高,当经过无数次的调试、修改后,能最终看到成品,有无比自豪的心情。大学期间做过图书馆管理程序等简单的数据库管理系统的课程设计,思想大致相似,变化范围有限,没有太多自己可发挥的余地。大家作品的最终结果都离不开同一个模式。相比一些数据库软件,游戏的设计有很多人情色彩和艺术思想的发挥,正式商业的软件的人性化界面和各个游戏间迥异的结构每每会让人有去开发的冲动。综合运用以前所学习的知识,设计一个JAVA手机游戏,并能实现以下的功能:游戏声音的控制、游戏等级的控制、最高分的记录、游戏暂停、游戏重新开始、游戏的结束。
手机已经与现代生活方式紧紧地结合在一起。他们是最普遍携带的个人用品中仅次于钥匙和钱包的东西。传统的台式机游戏将目标锁定在低级趣味的人和青少年身上,而手机游戏则每个人都可以访问的到??随时,随地。尽管每个手机游戏都不贵,但是巨大的使用量(如:每人每星期一个新游戏)将使得这个市场商机无限。但是,对于开发者来说,将控制台游戏迁移到手机游戏工程很大。因为他们所面向的对象、生活方式和分布式模型都有着极大的区别。
由于J2ME平台被认为是最杰出的手机游戏平台,它为开发者、设备制造商、网络通信公司和消费者广泛接受。它有一些非常重要的特征对所有组织都有益。因此本文采用它来进行设计。利用Java撰写手机上的程序当然有其缺点,最广为人知的可能就是执行效率的问题,Java在执行速度这个议题上一直让人诟病。不过笔者认为,随着技术的发达,将会有更快更省电的嵌入系统专用CPU出现,Java One中也传出将针对J2ME开发专用芯片,让Java在 手机上的程序可以跑得更快,因此效率上的总是其实是可以忽略的。更何况,当Sun在设计J2ME的时候,也用了很多方式企图加快Java 在手机上的执行速度。

 
 
    本文版权归作者所有,请不要用于商业用途!

转载于:https://my.oschina.net/lunwen/blog/3488

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/465628.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何用示波器测量串口波特率

这是前段时间遇到的问题,刚好这里找到了答案,记录下分享给大家。如何确定时基假如要测量的波特率为9600, 则每一比特位的时间为:1/9600 ≈ 104 μs,一般示波器横向上每个大格子里5个小格子,要想看清一比特位一般需要一…

Linux内核工程师是怎么步入内核殿堂的?

上图是公众号冠名参加的篮球赛对我来说,要搞好Linux内核,首先要做的就是买一块Linux开发板,然后就使劲捣鼓。下面是一位大神对于入门Linux内核的看法。以下的「我」不是公众号作者作者:Coly Lihttps://www.zhihu.com/question/304…

时间同步绝对是一个大问题

上图是加班看到的夜景假设A电脑时间和B电脑时间不同,当他们两个电脑的用户在使用电脑的时候就会存在问题,比如A电脑的用户说,我们下午5:00 去打球,然后A电脑到了5:00就去打球了,但是可能这个时候…

Window10彻底卸载应用商店

Window10如何彻底卸载应用商店?Window10应用商店就是一个应用下载平台,我们可以在应用商店中下载各种应用,但是很多用户并不喜欢在Window10应用商店中下载应用,觉得应用商店浪费内存,因此想将应用商店卸载掉&#xff0…

STM32F7xx —— QSPI

STM32F7xx —— QSPI 目录 STM32F7xx —— QSPI 一、QSPI 二、几个重要的函数 三、几个重要的结构 四、QSPI接口设计(仅供参考) 五、QSPI驱动W25Q256 一、QSPI SPI 是 Queued SPI 的简写,是 Motorola公司推出的 SPI 接口的扩展&#xf…

嵌入式、物联网常见通信协议

本文介绍一些常见的嵌入式、物联网通信协议,它们具有不同的性能、通信速率、覆盖范围、功率和内存,而且每一种协议都有各自的优点和或多或少的缺点。其中一些通信协议只适合小型家用电器,而其他一些通信协议则可以用于大型智慧城市项目。物联…

解决T400死机的问题!

终于解决这几天突然出现的t400 vista假死问题! 原来罪魁祸首是 ThinkPad -- Intel Matrix Storage Manager驱动程序(Windows XP/vista 32bit) 此更新在su自动更新里也有 千万别更新 如果不小心更新并出现偶尔假死(现象:鼠标能动,但是不能打开程序所有应用…

网络中路由器的工作原理

大家好,我是情报小哥!01路由器

C++学习(10)

1 //设计运算符重载的复数类2 #include<iostream.h>3 4 class Complex{5 private:6 double real;//实部7 double image;//虚部8 public:9 Complex(){ 10 real0; 11 image0; 12 } 13 Complex(do…

嵌入式真的没前途?

-上图是我的朋友邓总最近在互联网&#xff0c;然后从侧面了解了嵌入式的行业发展&#xff0c;嵌入式是离不开硬件的&#xff0c;但是硬件的话&#xff0c;又不只是靠硬件赚钱&#xff0c;如果硬件做不成一个产品&#xff0c;很难卖一个好价钱&#xff0c;就好比一个好的食材&am…

js for in 遍历对象与数组

遍历对象 let obj {q:9,w:5,e:2,t:7,c:3}//for in 遍历对象 key为对象的属性名称,遍历属性值时用[]操作符访问//通过[]操作符为对象添加属性或访问属性时&#xff0c;属性名称可以是任何字符串。for (let key in obj) {console.log(obj的key:,key, obj的value:,obj[key]);} …

前凸后翘的步进电机调速算法~

[导读] 大家好&#xff0c;我是逸珺。今天想分享一种超级实用的步进电机调速算法&#xff0c;这种算法在步进电机调速方案中可以说是一种非常优异的方案。梯形调速算法 为啥需要设计一个调速算法呢&#xff1f;步进电机不是给多少脉冲就动多少步吗&#xff1f;但是带上负载了就…

CentOS 7.3 系统安装配置图解教程

一、安装CentOS 7.3 CentOS 7.x系列只有64位系统&#xff0c;没有32位。生产服务器建议安装CentOS-7-x86_64-Minimal-1611.iso版本 成功引导系统后&#xff0c;会出现下面的界面 界面说明&#xff1a; Install CentOS 7 # 安装CentOS 7 Test this media & install CentOS …

朝花夕拾-不务正业的大学生做了什么比赛?

朝花夕拾&#xff0c;旧事重提之意。恰逢CSDN年终征文&#xff0c;所以写作本文为年终总结&#xff0c;实为大学四年的总结&#xff0c;和CSDN一起成长参与各类竞赛的回忆。四年里和小伙伴们一起辛苦奋斗做了那么多比赛&#xff0c;当比赛结束&#xff0c;那些作品便无人问津了…

我是在这里学到的Linux知识的

-上图是读者朋友圈照片&#xff0c;已咨询原创作者这是一个群友分享的学习资料&#xff0c;确实很棒。今天在上班&#xff0c;临近下班的时候&#xff0c;我到茶水间打水&#xff0c;当时下比较大的雨&#xff0c;从里面向外面看出去&#xff0c;看到蒙胧胧的一片&#xff0c;春…

c#字符型转化为asc_wap站 utf-8与 gb2312字符编码的转化函数

一般的wap站的编码都是<?xml version"1.0" encoding"utf-8"?>&#xff0c;所以用form 或者a 传递参数时会遇到乱码&#xff0c;在调用页面无法读取正确的中文字符&#xff0c;可以用一下的函数编译&#xff0c;转化成中文&#xff0c;然后调用Func…

Suct(一)

网址&#xff1a;https://github.com/ScutGame/Scut/wiki 优点&#xff1a;免费&#xff0c;教程多&#xff0c;又有Demo 贼好 【服务器框架层次结构图解】 &#xff08;好厉害~&#xff09; 【一、配置好 IIS Web 服务器】 1. 打开 控制面板 -> 程序和功能 -> 打开或关…

网校系统推荐eduline_网校系统的各项功能的用处

网校系统中有许多的子系统&#xff0c;其中众所周知也是相对重要的两个子系统&#xff0c;一个考试系统&#xff0c;一个直播系统&#xff0c;今天未来云校就来讲讲这两个子系统以及这两个子系统和网校系统的联系。在线模拟考试系统与网校系统大家都知道考试相对于学员、老师和…

学习 Linux/C/C++ 必备资料

在这个信息过载的时代&#xff0c;质量往往比数量更为重要&#xff01;接下来给你推荐的&#xff0c;是我私藏很久的几个有态度、有意思、有质量的优质公号。学习 Linux/C/C 必备&#xff01;快来关注&#xff0c;在这里看见另一种可能&#xff01;开发内功修炼公众号「开发内功…

emmc固件开发_UP2开发板简易开箱(二)

在 老狼 的x86开源硬件群里面抽中了一个UP2开发板&#xff0c;时间已经过去半年多了&#xff0c;实在惭愧&#xff0c;其中一部分原因是菜&#xff0c;菜是原罪。现接上一位抽中UP2的大佬 Jiaao Bai 的文章&#xff0c;本文就叫UP2开发板简易开箱&#xff08;二&#xff09;。一…