java自1995年发明以来以发生了很大的变化,从最早的为基于溜览器中运行的applet的编程,到servlet/ejb的server编程,再到现在的midlet为无线信息设备的编程.它已发展成为为开发者提供一端到端编程开发的平台,即我们常说的 j2se/j2ee/j2me,java的三个平台(fig1).由于无线编程有其完全不同于传统编程的特殊性,比如:运行设备的多样性,设备处理能力不如服务器与微机,用户界面的差异性等.另外在加上无线技术的飞速发展,使得j2me的体系架构有者完全不同于j2se/j2ee的特点.
图1: java 的三个平台 【程序编程相关:jive Forums 4中使用中文的方】【推荐阅读:中国软件业和Linux的讨论和建议】
【扩展信息:jbuilder2005的快捷方式】
j2me的架构是把我们传统的java架构:硬件/os/jvm/apis/应用加一变化,变成了:硬件/os/configuration/progile/应用.之所以采用这样的架构是由我们上面所谈到的j2me的特殊性有关.
图2: j2me的架构
j2me/cldc/midp作为j2me的一个版本,它是专为无线移动通讯设备说设计的,在下面我们简单介绍它的体系架构.从下图中我们可以看到:
图3: cldc/midp架构
在cldc之上有两类api:
-midp apis: 这些apis正是midp v.0规范所要定义的apis.
- oem-specific apis: midp规范所涉及的无线通讯设备多种多样,因此它不可能 涉及所有设备 的需求.因此这一类的apis是由oem厂商提供以便访问特定设备的特定功能.但基于这些apis的应用可能不能在其它的mids设备上运行.
mid应用的种类:
-midp: 一个midp应用或称为midet,它必需只使用midp与cldc规范中所定义的apis.该类应用能在应是在mid设备上最常见的应用.
-oem-specific: 一个oem-specific的应用会使用一些不在midp中定义的pis(oem-specific classes) .这些应用不能在不同的mids设备上运行.
-native: 一个本地应用使指用非java语言编写的直接运行于设备操作系统之上的应用.在midp规范中不涉及oem-specific与native的应用.
三 mid v2.0规范所涉及的范围:
我们都知道无线信息设备(mids〕的功能多种多样.但midp规范并不是要对这些设备的所有功能都要加以定义,并提供apis编程.相反midp v1.0与midp v2.0的专家组同意只针对有通用并且成功实施的功能的需求制订相应的apis.在midp v1.0中这些功能包括:
- 应用的下载
- 应用的生命周期
- 端到端的传输(http)
- 网络联结
- 数据库存储
... 下一页