年
移動開發恐怕成為了最時髦的字眼
在最近一份調查顯示
有
%的受訪者涉足嵌入式/移動設備應用開發
這個數字可能略高於實際的比例
但也足可說明嵌入式/移動設備應用開發是一塊誘人的新鮮奶酪
J
ME是嵌入式/移動應用平台的王者
Linux和WinCE分列二
三位
Nokia等廠商力推的Symbian平台目前開發者占有率尚未達到滿意水平
考慮到調查項合並了嵌入式設備(例如PDA)和移動設備(例如智能手機)
Symbian
WinCE系列在移動平台上會是競爭的主要兩方
如果廠商能在標准實現上做得更加規范
則J
ME的跨平台特性會發揮得更加淋漓盡致
繼續保有王者地位
J
ME是SUN公司推出的針對嵌入式消費類電子產品的開發平台
與J
SE和J
EE共同組成Java技術的三個重要的分支
J
ME實際上是一系列規范的集合
由JCP組織制定相關的JSR並發布
各個廠商會按照規范在自己的產品上進行實現
但是必須要通過TCK測試
這樣確保兼容性
比如MIDP
規范就是在JSR
中制定的
J
ME平台的形成頗有些Java技術回歸起點的味道
我們知道Java本來就是針對消費類電子產品而生的一門編程語言
而後才慢慢發展為一門技術
一個平台的
談到J
ME我們通常都會說到一個詞KVM
而這可以認為是J
ME的起源
KVM之父Antero Taivalsaari本來在SUN公司參與一個名叫Spotless的研究型項目
由於他曾經有著在世界知名電信設備制造商工作的經歷
這使得他萌發了在移動終端設備
比如手機
上實現java虛擬機的想法
而這得到了經理的支持
隨後AT做為領導者帶領團隊開發了能夠在手機這樣的移動終端設備上運行的虛擬機和CLDC核心類庫
慢慢的J
ME浮出了水面
J
ME的設計應該說是眾多頂級工程師的結晶
她被設計的非常靈活
在J
ME中非常重要的兩個概念是Configuration和Profile
Configuration是支持最大范圍設備的最小的平台
在這一層還包括了Java虛擬機
Profile是針對特定的設備提供相應的開發包集合
另外針對某些設備特有的功能特性
J
ME還推出了Optional Profile的概念
比如Mobile Media API
在J
ME平台中有兩個主要的Configuration
一個是Connected Limited Device Configuration
一個是Connected Device Configuration
區分的標准則是按照設備的處理器
內存
聯網能力等硬件特性
由於這些規范制定比較早
而現在的移動終端設備的處理和存儲能力都有了質的飛躍
因此不再列出區分的標准
因為那已經沒有了意義
你甚至會認為那是錯誤的
目前J
ME的應用主要還是基於CLDC的
因此本文將主要向讀者介紹基於CLDC的J
ME平台
不過筆者在兩家世界著名電信設備商參加的開發項目表明
基於CDC的應用將慢慢占領主流市場
因為CDC提供了更強大的類庫支持
Mobile information Device Profile位於CLDC之上
在CLDC規范制定出來後並沒有引起開發者的廣泛注意
市場也沒有因此而發生變化
原因是CLDC中並沒有提供圖形用戶界面編程的接口
這樣應用程序就沒有和用戶交互的能力了
MIDP
的推出受到了開發者的廣泛關注
在MIDP
中提出了一種新的應用程序模型MIDlet
開發者還可以用MIDP中提供的javax
microedtion
lcdui包開發圖形用戶界面程序
用MIDP
的子系統Record Management System進行數據的持久性操作
借助於CLDC中提供的Generic Connection Framework的聯網能力可以通過HTTP協議訪問Web服務器
J
ME幾乎無所不能
然而一些問題也慢慢暴露出來
由於MIDP的規范制定得過於寬泛
提供的功能有限
導致各個廠商在實現MIDP的時候在功能特性上存在很多差異
比如應用程序的大小
RMS的存儲空間
並行存在的線程數量等等
更糟糕的是各個廠商還實現了很多J
ME之外的功能
例如Nokia UI API中提供了聲音處理以及全屏等功能
這樣破壞了Java跨平台的特性
如果你得程序中應用了Nokia UI API的話
那麼它就不能移植到Motorola的手機設備上了
為了彌補這些不足
SUN在隨後的MIDP
中推出了MMAPI的一個子集來解決聲音處理的不足
並設計了一個獨立的游戲開發包javax
microedition
lcdui
game用於游戲開發
還對push
socket聯網等特性提供了支持
在JSR
中更是推出Java Technology for the Wireless Industry使得規范更加嚴格
提高了應用程序的兼容性
不僅如此
J
ME中的可選包更是各顯神通
Bluetooth API
SIP API for J
ME和Mobile
D Graphics都提供了非常強大的功能
J
ME的發展與競爭
軟件環境飛速發展的同時
J
ME平台的硬件環境和市場同樣越來越成熟
Java手機的數量在成倍增長
預計
年java手機數量有望突破
億部
硬件中加快集成Java預計將進一步促進Java在市場中的普及
J
ME將成為事實上的標准
到
年
Java手機預計將占全部手機出貨量的
%
與此同時移動增值業務的突飛猛進大大的推動了J
ME技術的發展
預計到
年全球與Java相關的移動增值業務市場總值將達到
億美元
年微軟公司開始逐漸進入移動通信行業
並與美國的電信設備制造商Motorola推出內置微軟SmartPhone的手機
打入手機市場
另外高通的BREW和Nokia的Symbian也一直認為是J
ME的競爭對手
不過目前他們的市場占有量都還很難和J
ME平台相比
BREW的兼容性差是最大的缺點
年中國聯通不甘心受制於高通的限制
而與SUN公司聯手打造了UniJa平台
筆者認為微軟提供的Mobile Windows和Nokia的Symbian平台將是J
ME最大的競爭對手
Symbian是目前最成熟的手機操作系統
通過使用Nokia提供的SDK
開發者可以使用Java或者C/C++進行應用程序的開發
遺憾的是Symbian的開發資料相對貧乏
C++語言的開發效率比Java要低
這些都給基於Symbian操作系統的C++開發的推廣帶來了不利的影響
國外的Motorola和國內的多普達等廠商陸續推出了基於微軟SmartPhone操作系統的手機
表明了微軟進軍移動開發市場的野心
通過使用微軟提供的SDK
開發者可以在手機上使用Compact
Net Framework進行高效的開發
當然也可以使用C/C++
然而畢竟微軟剛剛進入移動開發市場
市場占有率還不高
J
ME平台是開放的
目前已經占領了絕對份額的市場
我們有理由相信J
ME將繼續成為移動開發的領導力量
From:http://tw.wingwit.com/Article/program/Oracle/201311/17102.html