Window Phone 平台開發技術簡介

來源:互聯網
上載者:User

    就目前來講,自傳統互連網技術普及之後,移動互連網也發展迅猛,如今各種軟體大多直接或間接依賴於互連網。這些軟體本質上依然是伺服器-用戶端結構的。服務端部署於伺服器上、用戶端部署在使用者終端上。無論是P2P、B/S、C/S還是其它混合型的結構,本質依然如此。以前,大多數使用者終端裝置是PC和膝上型電腦,如今終端更多,又增加了大量的裝置,其中普及率最高的是智能手機及平板電腦,除此之外還誕生了車載連網裝置等等其它各種終端。

     以前軟體開發主要為PC開發軟體,如今則需要為各種終端開發相應的軟體,這在一定程度上加劇了軟體開發的複雜度,各種平台擁有各種不同的作業系統、開發環境、開發工具、程式設計語言以及不同的庫、不同的平台特性、不同的輸入裝置等等,一個人已經很難精通多平台的開發了。今天聊一聊移動平台的開發及Windows Phone需要掌握的開發技術。就目前來說,這裡所說的移動平台主要指智能手機及平板電腦,因為目前平板電腦搭載的作業系統以及實用方式和手機相似,就不在多說了。目前在移動平台上開發軟體主要基於有以下幾種平台:

1. iOS

2. Andiord

3. Windows Phone

當然,除了這3種之外還有其它一些平台,不過就目前來說,其它的平台不太被看好,這裡主要聊一下這幾種。Andiord是Google開放的系統,優良的系統和開放性使得它成為了目前市場佔有率最高的系統,裝置數量驚人,但也導致了一定問題,如系統版本混亂、裝置規格參差不齊等等,使得開發和維護的難度大大增加。ios是Apple公司主導的系統,精美的設計使用iphone和ipad大行其道,使ios成為市場佔有率第二的作業系統。而Windows Phone大家都知道,和其它兩個平台相比應用數量上不佔優勢,但是從Windows Phone 7 到 Windows Phone 8,市場增長速度迅猛,目前的裝置數量已不算低,是公認的最有可能發展壯大和其它兩個平台抗衡,微軟有著深厚的Windows系統周邊資源,包括大量的開發人員,他們都可以很容易過渡到Windows Phone的開發上,新的windows phone 8 採用windows 8的核心,原來windows pc山的軟體更換下UI和輸入方式,就能方便地移植到windows phone 上運行,成為一款手機應用軟體,這也是一種巨大的優勢。如今,從事某個平台的開發離不開一下幾個條件:

1.平台提供的API

2.平台支援的程式設計語言

3.平台支援的相關開發工具、編程環境

在以上3個基礎上的開發是為原生應用。而通過跨平台語言、工具、庫實現對各平台API適配而開發出的應用是為跨平台應用。一般來說,原生應用能充分使用平台API,所以能充分發揮平台的特性和優勢,具有最佳的效能表現和相容性。而跨平台應用則不具備這些優勢(這裡的跨平台指的是一次編寫,處處運行)

ios平台提供ios SDK,提供了開發所需的基礎功能API以及OpenGL圖形開發介面,程式設計語言使用objective-c,以及運行於蘋果系統上的開發工具XCode。Andiord同樣提供基礎功能API和OpenGL圖形開發介面,程式設計語言使用java,以及可運行於其它系統上的開發工具。這裡重點是說一說windows phone.

移動平台上的軟體主要分為兩大類,

1. 普通應用軟體,即常規的應用程式,例如瀏覽器、播放器、日記本、聊天軟體等等

2. 遊戲,區別於普通軟體,在移動平台佔有非常重要的地位。

Windows phone 7, 平台API為,Sliverlight類庫充當普通應用開發介面,XNA作為遊戲開發圖形介面,支援的程式設計語言為C#,注意,程式運行於.NET Compact Framework 之上,並非普通的.NET Framework。Silverlight使用基於XAML的UI,微軟提供的windows phone開發所需的庫比傳統Windows上的.NET類庫要弱一些,其中刪減了一些不常用的功能,但是無論是檔案讀寫、網路編程、介面開發都已足夠開發出各種應用軟體。XNA作為圖形開發介面,是Windows Phone 7  遊戲開發的基礎,它簡化了DirectX的繁雜API,功能上並未遭到削弱,也能開發出各種2D、3D遊戲。除此之位還提供優秀的開發工具 Visual Studio ,很大地提高了開發效率。windows phone 7 並不支援Native code, C、C++等都無法為Windows Phone 7 開發程式,因此為Windows Phone 7開發應用程式需要掌握C#,.NET常用類庫,XAML Silverlight即可,以前Windows平台的.NET程式員,幾乎不需要學多少新的東西就可以快速過渡。開發遊戲則需要掌握C#,.Net常用類庫、XNA即可,如果基於遊戲引擎開發,甚至不需要太瞭解XNA。Windows Phone 裝置都遵守微軟的規範,所有Windows Phone 7 手機螢幕解析度均為480*800,擁有返回、常用鍵、搜尋 三個標準按鍵。

新一代的Windows Phone 8 :

從客觀上來講,Window Phone 7才用了Win CE核心,擁有完善的應用、遊戲開發技術支撐,但沒有先發優勢,從發布至今,取得了一定的市場地位,算是小有成績確算不上成功,和ios,andiord相比,市場佔有率及應用數量都存在較大差距。如今,剛發布不久的全新一代Windows Phone 8進行了重大改進,主要包括以下幾個方面:

1.Win CE核心更換為全新的Windows 8核心,因此它是一款Windows NT作業系統,支援以前普通Windows上部分API

2.開放本地代碼支援,使得C、C++等語言也可以為Wp8開發程式,以前眾多的C++程式員在不必掌握.NET的情況下也可以過渡到Wp8的開發。

3.開放DirectX 11圖形API,使得以前傳統的遊戲程式員可以輕易過渡到Wp8遊戲開發,並開發高品質遊戲。windows phone 8 上的DirectX 11支援可程式化渲染管線,支援頂點、像素著色,而windows phone 7僅支援固定渲染管線。

4.相容所有windows phone 7 應用程式。

這裡稍微提下WP8上的DirectX 11,與PC上的DirectX API並無區別,只是某些特性不受支援,畢竟手機的效能是無法與PC抗衡的。Wp8上的Dx11 不支援多重採樣消除鋸齒、幾何著色器、外殼著色器等,僅支援頂點、像素著色器,可提供與DirectX 9相比的絕大多數功能,足以勝任高品質遊戲的開發。原來Wp7上的Silverlight和XNA依然可用於windows phone 8 的開發中。今後的Wp8開發中將由XMAL作為應用底層,DirectX作為遊戲底層,而上層支援託管、本地代碼,使得幾乎所有的Windows程式員均可快速過渡到Windows phone 8的開發中來。從近期windows phone 8及其手機的市場表現來看,增長非常迅猛,前景廣闊,或許隨著IPhone熱度的降低,Andiord的混亂,Windows Phone 一次次的改進和推廣,Windows Phone 8將成為Windows Phone作業系統及Windows Phone手機普及、崛起的標誌。

如果你也是一名Windows程式員,是否對Windows Phone開發有興趣?是否希望有一部Nokia Lumia 920手機? windows phone的表現讓我們一起期待吧!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.