Microsoft® .NET(讀作“Dot-Net”)Framework 精簡版是一種用于 Microsoft Windows® for Pocket PC 和 Microsoft Windows CE .NET 的新型應(yīng)用程序編程接口 (API)。這一新型 API 為移動設(shè)備和嵌入式設(shè)備帶來的好處與完整的 .NET Framework 給基于 Windows 的桌面平臺帶來的好處相同。.NET Framework 精簡版給程序員提供了兩種編程語言選擇:Microsoft Visual Basic® 的一個兼容 .NET 的增強(qiáng)版本,稱為 Visual Basic .NET;以及 Microsoft Visual C#™(讀作“see-sharp”),這是專門為 Microsoft .NET 開發(fā)的 C 和 C++ 語言家族中的一個新成員。
Windows CE 程序員可能會問:Windows CE 是否需要另一個 API?我們目前使用的 API 有什么問題?.NET 給 Windows CE 增加了什么?什么時候采用它更有意義?本白皮書將探討這些問題。
Microsoft Win32® 是桌面 Windows(即 Microsoft Windows XP)以及嵌入式和移動版本的 Windows(這里指 Windows CE)的核心 API。但它并不是唯一的 API,原因是:它相對底層、古怪、容易出現(xiàn)內(nèi)存泄漏,總的來說不太好用。
現(xiàn)在也有其他編程接口,包括適用于 C++ 程序員的 Microsoft 基礎(chǔ)類 (MFC) 庫以及 Microsoft Visual Basic 和 Microsoft eMbedded Visual Basic。這些 API 主要是為了解決 Win32 中的缺陷而創(chuàng)建的,但它們也有自己的缺陷和局限性。例如,MFC 實際上是 Win32 上覆蓋的一個薄層。因此,盡管 MFC 修補(bǔ)和隱藏了 Win32 的許多瑕疵,但它仍然具有 Win32 的一些缺陷,尤其是其命名規(guī)則非常古怪,而且很容易發(fā)生內(nèi)存泄漏現(xiàn)象?;?Windows 的桌面平臺上的 Visual Basic 及其 Windows CE 精簡版 eMbedded Visual Basic 都僅限于用作標(biāo)準(zhǔn)的 API。事實上,隨著 .NET Framework 精簡版的推出,Microsoft 已宣布在未來 Windows CE 版本中,將不對 eMbedded Visual Basic 進(jìn)行增強(qiáng),也不會將它移植到新的 CPU 體系結(jié)構(gòu)。
不管是否古怪,Win32 都有自己的地位。在內(nèi)存有限的環(huán)境中,這是唯一的選擇,因為 Win32 創(chuàng)建的可執(zhí)行文件最小。(盡管在一個內(nèi)存有限的環(huán)境中,必須加倍小心地避免內(nèi)存泄漏?。τ谀承╊愋偷能浖ㄖ饕遣僮飨到y(tǒng)擴(kuò)展),您別無選擇,只能使用 Win32。這對于設(shè)備驅(qū)動程序、命令解釋程序擴(kuò)展、控制面板小程序、OEM 適配層 (OAL) 以及其他底層模塊也都適用。在這樣的情況下,Win32 是唯一的可用編程接口。
.NET 代表著使編程更加高效的一種系統(tǒng)化的努力成果。也就是說,.NET 不是簡單的一個元素,而是許多元素的綜合體。.NET 的每個元素都體現(xiàn)了如何簡化代碼的編寫;總體來看,所有元素都代表著一種方向 - 有人稱之為革命。對于 Microsoft 的長期客戶來說,它代表著 Microsoft 以 Internet 為中心的重新塑造。而且,為 Windows 的任何版本(桌面或嵌入式)開發(fā)軟件的人都需要評估 .NET 對他們有何影響,而不是是否會影響他們。
但是,為什么需要進(jìn)行這些改變呢?這是因為軟件開發(fā)目前仍然是一項人力密集度非常高的、容易出錯的活動。相比之下,硅密度(以及用于在硅中設(shè)計復(fù)雜電路的工具)的進(jìn)步已經(jīng)使硬件產(chǎn)生了驚人的發(fā)展。而軟件開發(fā)方面的進(jìn)步要小得多。但是,考慮到軟件的重要性(對于某些企業(yè)來說,軟件是一個關(guān)鍵的增值領(lǐng)域),提高軟件開發(fā)效率的努力很可能會產(chǎn)生巨大而持久的效益。
http://www.microsoft.com/china/msdn/archives/library/dncenet/html/WinCECompactFx.asp