前言:Windows作業系統之所以風靡世界,是因為其“易學易用”,從使用者的角度出發,讓數以萬計的非IT人員使用計算機實現娛樂,工作等目的。Win8繼承Windows桌面的優點,同時提供一種新的使用者體驗模式 - Windows store風格。換句話說,Win8作業系統存在兩種不同風格的應用。今天系統之家小編為您介紹一下Win8系統應用框架以及開發工具的使用。
*理解Win8系統應用框架
Win8具有兩個不同風格的應用,Windows store應用和傳統Windows桌面應用。兩種風格應用使用不同的UI引擎,不同的服務和工具,以及不同的API. 但是,都執行在同一個Win8系統核心下。
我們簡單對比一下兩種應用:
*Win8系統傳統桌面應用框架
Win8傳統桌面應用可以根據分為三類,分別是Win32應用,.Net應用和HTML應用。
1.Win32應用主要開發語言為C,C++或VB。該應用被直接編譯為CPU程式碼執行在Win32 API上,其使用者介面實現必須使用GDI或者GDI+。
2.Net應用主要開發語言為C#,VB.NET。該應用被編譯為中間語言(IL),然後再被轉換為CPU程式碼執行在CLR(Common Language Runtime)環境。其使用者介面實現使用XAML語言。
3.HTML應用主要開發語言為HTML/CSS和JavaScript,該應用基於瀏覽器執行。
* Windows store應用框架
基於相同的Windows 8作業系統核心,Windows Store應用共享相同的API層,稱為Windows Runtime APIs。無論使用C/C++,或者基於.Net的C#/VB.NET或者HTML5/JavaScript任何一種開發語言都可以輕鬆呼叫WinRT API類庫,實現本地應用操作。
值得一提的是,微軟綜合當前最流行的HTML5/CSS3/JavaScript技術,使Web開發人員可以輕鬆開發Windows store本地應用。另外,基於XAML的Silverlight和WPF技術都成為Windows 8作業系統部分,不再需要安裝外掛支援。而Silverlight/WPF開發人員,可以繼續使用相關開發技能從事Windows Store應用開發。
*Windows Runtime框架
從上面圖例可以看出,Windows Runtime是Windows 8應用框架重要組成部分之一。微軟將WinRT視為繼2002年.Net Framework釋出後最大的革新。作為Windows Store應用設計和開發人員,從微軟設計原則考慮,Windows Runtime不僅僅是一套簡單的API類庫,而是一套獨立完整的能夠支援Windows Store應用風格的執行環境。
*Windows Runtime的優點:
1. WinRT執行在Windows 8核心層之上,為Windows Store應用提供API支援訪問本地資源,例如GPS,攝像頭,麥克等。
2. Windows Store應用執行在安全沙箱中,所以,該應用可以被認為安全的managed的應用。當應用嘗試使用未授權本地資源時,WinRT將提示使用者是否賦予系統存取許可權。
3. 傳統Win32 API獨立於作業系統核心服務,而WinRT是Windows 8作業系統組成部分之一。 與Win32相比,WinRT更加穩定,其記憶體管理更加優化,對於應用和系統性能都有很大的提高。
4. WinRT支援本地非同步操作,這是對於移動裝置而言至關重要的特性。
*語言對映層(Language Projection)
Windows 8應用支援多種開發語言,而不同開發語言,需要通過Language Projection對映到Windows Runtime執行環境,開發人員不需要擔心語言之間的轉換,整個過程都是編譯器自動完成。
值得一提的是,通過語言對映層,開發人員可以在同一個專案中使用不同的開發語言開發專案功能,在隨後的文章中,我將提供相應例項演示。
*如何選擇Windows Store應用開發語言
對於Windows Store應用開發語言選擇,有以下幾個建議提供參考:
1. 對於具有Windows應用開發經驗的開發人員而言,C#和C++是最好的選擇,相比而言,C#基於.Net Framework,其應用為Managed,比較容易學習掌握。而C++更加貼近底層應用開發。
2. 對於具有Web應用開發經驗的設計和開發人員而言,HTML5/CSS3/JavaScript是最好的選擇。類似PhoneGap框架,Windows 8將提供一個Web Host承載執行編譯後的HTML應用,使其達到本地化的效果。
3. 對於具有巨集操作經驗的開發人員而言,VB.Net是一個不錯的選擇,其應用開發與微軟Office VBA應用開發類似。
原作者: 系統之家