當前位置:成語大全網 - 英語詞典 - J2ME到底是什麽?

J2ME到底是什麽?

J2ME,即Java 2 Micro Edition,是SUN公司推出的在移動設備上運行的微型版Java平臺,常見的移動設備有手機,PDA,電子詞典,以及各式各樣的信息終端如機頂盒等等。

由於移動終端的類型成千上萬,而且計算能力差異非常大,不可能像桌面系統那樣僅僅兩三個版本的JVM即可滿足Windows,Linux和Unix系統,因此,J2ME不是壹個簡單的微型版的JVM。為了滿足千差萬別的移動設備的需求,SUN定義了壹系列的針對不同類型設備的規範,因此,J2ME平臺便是由許多的規範組成的集合。

最重要的移動終端當然是手機了,因此,我們主要討論手機相關的J2ME規範。

Configuration

SUN把不同的設備按照計算能力分為CLDC(Connected Limited Device Configuration)和CDC(Connected Device Configuration)兩大類,這兩個Configuration是針對設備軟硬件環境嚴格定義的,比如CLDC1.0定義了內存大小為64-512k,任何設備如果支持CLDC1.0,就必須嚴格滿足定義,不能有可選的或者含糊的功能。

CLDC1.0是針對計算能力非常有限的設備定義的,只支持整數運算,不支持浮點運算,早期的Java手機大部分都支持CLDC1.0,如Nokia 3650,Siemens 6688i。

CLDC1.1則增加了浮點運算,因此,在支持CLDC1.1的設備上,可以使用float和double類型的變量。現在的Java手機很多都能支持CLDC1.1,如Nokia 9500,Siemens S65。

CDC則是針對計算能力比較強的設備定義的,如PPC等,CDC平臺的JVM基本上和桌面的JVM很接近了,只是可以使用的Package大大少於J2SE的包。支持CDC的非常高端的Java手機也會很快上市。

Profile 和Configuration相比,Profile更多是針對軟件接口的定義,Profile有必須實現的,也有可選的功能,因此,Profile更靈活。

最重要的Profile當然是MIDP(Micro Information Device Profile),MIDP定義了能在Java手機上運行的Java程序的規範,包括應用程序生命周期,各種UI界面組件,支持Record存儲和Http連接等等,符合MIDP規範的Java小程序被稱為MIDlet,可以直接通過無線網絡下載到手機並運行。

早期的MIDP1.0規範使我們能在手機上運行有UI界面的Java程序,但是MIDP1.0對遊戲的支持不夠,必須自己實現許多代碼,因此,MIDP2.0規範大大加強了對遊戲開發的支持,使開發者能編寫更少的代碼來創建遊戲。

MIDP規範的圖形界面基本上都是獨立於J2SE的AWT和Swing組件,因為目前手機的計算能力還比較有限,但是,隨著手機的CPU越來越快,使得AWT和Swing移植到手機上也將成為可能,因此,基於CDC規範的最新的PBP 1.0(Personal Basic Profile)和PP 1.0(Personal Profile)提供了部分AWT和Swing的支持,目前,部分高端PDA已經可以運行PBP和PP的Java程序了。可以預見,將來大部分的AWT和Swing組件都能移植到手機上。

前面已經說過,和Configuration相比,Profile有許多可選包,比較實用的Profile還有在JSR135定義的MMAPI(Mobile Media API),實現多媒體播放功能;在JSR184定義的M3G API(Mobile 3D Graphics API),實現3D功能;在JSR120定義的WMA(Wireless Messaging API),實現短消息收發。如果妳的手機支持某壹Profile,如M3G,那麽便可以在MIDlet中使用M3G的3D API實現3D遊戲。

如果妳準備在手機上開發J2ME應用,選擇手機時就需要註意廠商支持的CLDC規範,支持MIDP1.0還是2.0,是否支持MMAPI,M3G,WMA等可選包。

Profile雖然定義了Java API接口,但是底層如何實現是由各廠商自己決定的,如M3G定義了3D接口,但是底層實現既可以使用硬件加速,也可以由C程序模擬,或者部分由硬件實現,部分由軟件實現。

比J2ME更精簡的Java平臺被SUN稱為JavaCard,運行在信用卡等芯片中,實現電子支付等功能,目前SUN還沒有把JavaCard並入J2ME平臺。

------------------------------------------------------------------------------------------------------------------

J2ME的前景如何?

J2ME 的前景很明顯要比 J2SE 甚至 J2EE 來的復雜,但是復雜性也預示著 J2ME 能夠支持的設備的多樣性。總的來說,以我的方法學習壹種特定的配置和簡檔並不很困難。許多情況下,J2ME 讓我想起 1995 年的 Java 語言。

如果試圖決定是否在嵌入式應用程序中使用 J2ME,您會發現有許多無法回答的問題。例如,我仍然不清楚何時 J2ME 的優勢能超越它的成本,特別是鑒於虛擬機和 API 在已經資源限制的環境下使用的資源。

然而,隨著規範的成型和更多簡檔的加入,我確信答案會出現,而且 J2ME 將鞏固其在嵌入式設備領域的地位。通過 CDC 和 CLDC,Sun 已采取重要的步驟為該領域的開發人員的各種需求提供各種重要的服務。基礎簡檔剛開始鞏固,個人簡檔將在幾個月內出臺。作為開發人員,我們將與 J2ME 壹同發展,如果僅是實驗性的,並且使 Sun 以及其他在無線和嵌入設備市場的商家明確我們的需求。

在我國目前J2ME的薪資大約在3500--4500元/月。