越來越多的人開始認為
經過了許多人共用一台計算機的大型主機時代
一人一台計算機的個人PC時代之後
下一個時代就是一人多台計算設備的普及計算時代(Ubiquitous Computing
IBM稱之為Pervasive Computing)
計算設備將從單一的PC擴展到各種各樣的大小和功能
從家庭消費電子產品
到個人隨身攜帶
穿著
車載的各種移動信息處理設備
多樣化是這個領域的最大特點
網絡是這個領域最重要的增值特性
當手機可以隨時隨地無線上網
PDA可以和個人PC同步
車載PC可以獲得網上GPS地圖數據時
這些孤立的設備才能夠發揮最大的作用
而平台無關性和網絡功能正是Java的設計目標和能力(事實上
Java最初的設計目標就是用於消費電子領域
但是後來在PC和服務器上得到了發展)
一次編寫
到處運行
的平台無關性
對網絡
多重設備間聯網的機制(JINI)顯然對這個領域是至關重要的軟件條件
這個領域內的Java標准就是J
ME
Java的最大目標和特點
就是
一次編寫
到處運行
的平台無關性
但是
很自然的
正如Sun認識到的
One size does
nt fit all
一套標准無法適應各種不同的需求
因此
Java技術目前共有三套
分別針對不同的平台和應用
Standard Edition (J
SE
標准版)
針對桌面端PC和工作站的個人和低端商務應用
Enterprise Edition (J
EE
企業版)
針對服務器端企業級應用
支持Servlets
JSP和XML等等
Micro Edition (J
ME
袖珍版
也有翻譯為小型版或者移動版的
)針對有限內存
顯示和處理能力的設備
主要是消費電子和嵌入式設備領域(這實際正是Java語言設計最初的目標領域)
針對消費電子和嵌入式設備領域豐富多樣的設備和彼此相差極大的計算能力及各種硬件條件
J
ME首先根據最基本的一些特征把它們劃分為兩類
一類是具備間斷網絡通訊能力的個人移動信息設備
如手機
雙向呼機
PDA(Personal Digital Assistant
個人數字助理
也稱掌上電腦)等
另一類是有固定的不間斷網絡連接的共享連接信息設備
如置頂盒(set
top boxes)
Web
TV
支持Internet的有屏幕電話
汽車娛樂/導航系統等
Sun的J
ME FAQ(常見問題集)裡有一個很好的概括
J
ME技術有兩個設計中心――手持的設備和可以插到牆上插座的設備
第一類設備往往是個人化的
移動的
使用電池
體積和功耗都有限制
因此功能和計算能力有限
第二類設備一般是固定的
因此體積沒有太大限制
由於固定
可以有持續電源供應
因此功耗沒有太大問題
計算能力相對充裕
計算能力是這兩類設備的主要區別
對其上可能的應用和環境顯然有著本質影響
不同類別的設備不可能采用同樣的Java平台
必須分別定義
針對這兩大類設備的平台規范就是Configuration
第一類設備的Configuration稱為CLDC(Connected
Limited Device Configuration)
第二類稱為CDC(Connected Device Configuration)
屬於同一類的設備計算能力是相似的
但是其他功能和條件還有非常大的區別
作為Java平台必須保證相容性
這就必須捨棄所有的設備特殊性
因此
Configuration就是支持一組通用設備的最小Java平台
作為這些設備的最小公分母來保證不同設備間的平台相容性
這裡的Java平台主要是指Java虛擬機(JVM)和核心庫
Configuration的分類是根據計算能力的不同來劃分的
同類設備的計算能力相近
Configuration是一個規范
定義了這類設備的共同Java平台
定義與設備無關的Java虛擬機和核心庫
是平台相容性的基礎
Profile的分類是根據設備功能劃分的
同類功能的設備其他各種硬件條件和需求也相近
Profile是一組API
在某一Configuration的基礎上擴展了針對設備特定功能的API
使得標准能夠完全適應特殊的設備
徹底發揮設備的功能
因此
J
ME體系的一般結構是
由Configuration定義的Java虛擬機運行於設備的宿主操作系統之上
構成整個平台的基礎
Configuration提供了基本的語言特性
Profile提供針對設備的特殊功能API和擴展類庫
應用程序的運行環境需要一個Configuration和至少一個Profile
多個Profile可以共存
也可以疊加
From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19696.html