1、J2ME 游戏开发实例讲解(1)大家有没有想过将华容道游戏移植到手机中去的冲动现在手机游戏琳琅满目,不一而足,华容道的实现版本也很多正巧不久前笔者对 J2ME 下了一番功夫,正想借这个机会小试牛刀。选用 J2ME 的原因还有一个就是目前 Java 开发大行其到,无线增殖业务迅猛发展,J2ME 的应用日渐活跃起来。这里先定义项目组的人员体制(其实只有我一个人):技术调研、需求分析、概要设计、详细设计、编码、测试均有笔者一人担任;美工这里我找了个捷径,盗用网上现成的,然后用 ACDSee 把它由 BMP转换成 PNG 格式(我出于讲座的目的,未做商业应用,d9t0c 应该不算侵权吧);至于发布,由
2、于缺少 OTA 服务器,此项不做(但是我会介绍这步如何做)。接下来,我们规划一下项目实现的时间表,以我个人经验,设想如下:技术调研用 2 天(这部分解决项目的可行性和重大技术问题,时间会长一些),需求分析用半天(毕竟有现成的东东可以参照,只要理清思路就行了,况且还有很多以前用过的设计模式和写好的代码),概要设计再用半天(有了需求,概要只不够是照方抓药),详细设计要用 2 天(这一步要把所有的问题想清楚,还要尽可能的准确描述出来),编码用 2 天(其实 1 天就够了,技术已经不是问题,多计划出一天来应付突发事件),测试用 2天(测试应该至少占全部项目的四分之一,不过这个d9t0c 项目只是一个
3、Demo,也太简单了),发布也要用上半天(尽管我们不去实际发布它,但是还要花点时间搞清楚应该如何做),最后就是项目总结和开庆功会(时间待定)。二.利其器“公欲善其事,必先利其器” ,做项目之前第一步是前期调研我们要做的华容道这个东东随处可见,我们要调研的是两个方面:1、游戏的内容:游戏本身很简单,就是有几个格子,曹操占据其中一个较大的格子,然后被几个格子包围,这些格子形状不一定相同,但是挡住了曹操移动的方向游戏者需要挪动这些格子最终把d9t0c 曹操移动到一个指定的位置才算是过关更具体的分析我们放在后面需求分析和概要设计中讨论。2、技术储备:谈到技术,这里简单介绍一下J2ME.Java 有三个
4、版本,分别是 J2ME(微型版).J2SE(标准版).J2EE(企业版) J2ME 是一个标准,采用层结构设计最低层是配置层(Configuration)也就是设备层,其上是简表层(Profile),再上是应用层(Application).MIDP就是移动信息设备简表,目前主流手机支持MIDP1.0,最新的是 MIDP2.0,它比前一个版本增加了对游戏的支持,在javax.microedition.lcdui.game 包中提供了一些类来处理游戏中的技术,比如我们后面会用到的d9t0c Sprite 类,它是用来翻转的.权衡再三,笔者决定使用 MIDP2.0 来做开发首先需要安装一个 J2ME
5、 的模拟器,我们就用 Sun 的 WTK2.0,我觉得 Sun 的东西最权威当然你也可以使用 Nokia.Siemens 或是Motolora 等其他模拟器,但是他们的 JDK 不尽相同,写出来的程序移植是比较麻烦的Sun 的 WTK2.0 可以到搜索引擎寻找下载,当然要想成功下载的前提是你要先注册成为 Sun 的会员(其实这样对你是有好处的) 当下来之后就是按照提示一步一步的安装安装好了之后,我们用一个“HelloWorld“程序开始你的 J2ME 之旅我们启动WTK2.0 工具集中的 KToolBar,然后点击NewProject 按钮,在弹出的输入框中输入d9t0c ProjectNam
6、e 为 HelloWorld,MIDletClassName 为Hello,然后点击 CreateProject,开始生成项目,工具会弹出 MIDP 配置简表,这里接受生成的默认值(以后还可以修改)点击 OK,工具提示我们把写好的 Java 源程序放到WTK_HOMEappsHelloWorldsrc 目录之下我们编辑如下代码,并保存在上述目录之下,文件名为Hello.java。importjavax.microedition.midlet.*;importjavax.microedition.lcdui.*;publilassHelloextendsMIDletd9t0c privateDi
7、splaydisplay;publicHello()display=Display.getDisplay(this);publicvoidstartApp()TextBoxt=newTextBox(“Hello“,“Hello“,256,0);display.setCurrent(t);publicvoidpauseApp()d9t0c publicvoiddestroyApp(booleanunconditional)保存好了之后,点击 Build 按钮,工具会为你编译程序,如无意外再点击 Run 按钮,会弹出一个手机界面,剩下的就不用我教了吧(用鼠标对手机按键一顿狂点) 。呵呵,你的第一个 J2ME 程序已经OK 了.什么你还一点都没懂呢(真是厉害,不懂都能写出 J2ME 程序来,果然是高手) 我这里主要是介绍 WTK2.0 工具的使用,程序并不是目的,不懂的d9t0c 话后面还会有详细的解说,这里只是带你上路什么你不懂 Java!那也没有关系,后面我再讲得细一点。