2003 年行動開發雙雄:Microsoft .NET Compact Framework 與 Sun J2ME。本文對比兩大架構核心組件、平台結構、部署模式、資料庫支援與策略差異。
.NET Compact Framework
- .NET 策略延伸至手持裝置,含 Smart Device Extensions (SDE) for VS.NET。
- 硬體無關執行環境,針對 Pocket PC、Windows CE .NET、智慧型手機、嵌入式裝置。
- 核心優勢:多語言(C#、VB.NET、C++)共用單一框架、本機碼 JIT 編譯高效能、無縫整合 XML Web Services、統一開發模型跨裝置。
- Mono 專案(Ximian)正將 .NET 移植至 Linux,未來可望跨平台。

J2ME 架構
- 針對螢幕、電量、記憶體受限裝置優化,採 Configuration/Profile/Optional Package 三層結構。
- Configuration(CLDC/CDC):定義 JVM 與核心庫,跨平台基石。
- Profile(MIDP 等):擴充裝置特定 API。
- 允許應用從網路下載並在裝置離線執行,創造軟體下載商機與運營商流量。
- 與 J2EE 伺服器端無縫整合,構建完整企業級行動解決方案。

關鍵差異對照
| 維度 | .NET Compact Framework | J2ME |
| 語言 | 多語言(C#、VB.NET、C++) | 單一語言 |
| 跨平台 | Windows CE 系列;Mono 進行中 | 原生跨平台(Symbian、Linux、Windows Mobile 等) |
| 部署 | Pocket PC/CE.NET 單次部署 | 多廠商裝置、OTA 下載 |
| 資料庫 | 內建嵌入式資料庫存取、離線同步 | 主要操作文字/檔案型資料,或透過 Server 代理 |
| 核心哲學 | 開發效率、多語言、Windows 生態 | 跨平台可攜性、單一語言、開放標準 |
結語
兩大陣營競爭剛起步,無論勝負,競爭過程本身將推動軟體技術創新與 IT 產業升級,開發者將從中獲益最多。