|
托管代碼是你唯一的選擇
對(duì)于普通的ISV和開(kāi)發(fā)者來(lái)說(shuō),托管代碼將是唯一的選擇。你將不能使用C++來(lái)編寫(xiě)程序,同時(shí),也不能對(duì)已有的native dll或者系統(tǒng)函數(shù)進(jìn)行P/Invoke調(diào)用。也就是說(shuō),不要奢望將你的某些代碼封裝在native dll里面然后在托管代碼里面調(diào)用。
兩種開(kāi)發(fā)模型可以選擇
而編寫(xiě)托管代碼將有兩種方式,一種是編寫(xiě)Silverlight的應(yīng)用程序,另外一種方式是編寫(xiě)XNA的程序。
這里的Silverlight 程序不同于常規(guī)意義上的Silverlight,雖然它是脫胎自Silverlight 3,但是又去掉了一部分不適用于移動(dòng)設(shè)備的特性,同時(shí)又加入了一些Silverlight 4的特性或者是針對(duì)移動(dòng)設(shè)備的代碼。同時(shí),常規(guī)概念中咱們所看到的Silverlight程序都是in browser的;但是對(duì)于Windows Phone 7上的Silverlight應(yīng)用程序來(lái)說(shuō),它們都是out browser的,也就是說(shuō)脫離瀏覽器單獨(dú)運(yùn)行的。
對(duì)于XNA程序來(lái)說(shuō),對(duì)于絕大部分國(guó)內(nèi)的開(kāi)發(fā)者來(lái)說(shuō)或許是個(gè)陌生的東西。它是以前微軟推出的用來(lái)開(kāi)發(fā)XBox上的游戲以及Zune上的應(yīng)用程序的一套開(kāi)發(fā)工具。很遺憾的是,由于XBox和Zune一直沒(méi)有正式的進(jìn)入國(guó)內(nèi),所以國(guó)內(nèi)的開(kāi)發(fā)真關(guān)注這方面的內(nèi)容的甚少。同樣,它也是采用托管代碼。它的開(kāi)發(fā)環(huán)境是一套基于Visual Studio稱(chēng)之為XNA Game Studio的東西。
Windows Phone 7 應(yīng)用程序架構(gòu)
我們會(huì)看到,最底層是.NET Compact Framework,它是一些核心組件。在此之上則是一些通用服務(wù),例如傳感器API,位置API,Windows Live服務(wù),網(wǎng)絡(luò)服務(wù),多媒體等等。再網(wǎng)上一層則是 Silverlight 或者 XNA 自己特有的一些內(nèi)容。最上層則是你基于這兩種不同架構(gòu)所編寫(xiě)的應(yīng)用程序。
開(kāi)發(fā)工具的選擇
目前您可以下載 Windows Phone Developer Tools CTP版。它里面包含Visual Studio 2010 Express for Windows Phone CTP版,Windows Phone Emulator CTP版,以及Silverlight for Windows Phone CTP版和XNA Game Studio CTP版。在這里需要特意說(shuō)明的是,Visual Studio 2010 的Express版本支持了Windows Phone 的開(kāi)發(fā),也就是說(shuō)它純粹是免費(fèi)的了。而不像以前,我們要做Windows Mobile的開(kāi)發(fā),必須要購(gòu)買(mǎi)Visual Studio才行。
安裝這套開(kāi)發(fā)工具需要您使用Windows 7或者Vista SP2操作系統(tǒng),需要3G的硬盤(pán)空間。對(duì)于內(nèi)存需求的是2G,同時(shí)還需要一塊支持DirectX 10的顯卡。
同時(shí),如果您是一位前端設(shè)計(jì)人員,想要仔細(xì)研究研究Silverlight的話,那么則可以下載Express Blend 4 Beta,然后再安裝上Expression Blend Add-in for Windows Phone以及Expression Blend SDK for Windows Phone. 您就可以體驗(yàn)在Expression Blend里面設(shè)計(jì)Windows Phone 7的應(yīng)用程序了。
工程類(lèi)型
安裝完開(kāi)發(fā)工具之后,打開(kāi)Visual Studio 2010 Express for Windows Phone。您會(huì)發(fā)現(xiàn)有如下工程類(lèi)型可以選擇:
我們會(huì)發(fā)現(xiàn)在Silverlight應(yīng)用程序中,除了類(lèi)庫(kù)工程之外我們有兩種應(yīng)用程序可以選擇。一種是“Windows Phone Application”,另外一種是“Windows Phone List Application”。
第一種工程是一個(gè)非常普通的Silverlight應(yīng)用程序。第二個(gè)工程是一個(gè)主界面為一個(gè)Listbox的應(yīng)用程序,它給你演示如何在界面中使用列表。但是,我相信絕大部分人需要等待的是標(biāo)準(zhǔn)的Pivot類(lèi)型的窗體以及它哪6個(gè)Hub中類(lèi)似于滑動(dòng)窗體一般的界面。這兩種窗體的模板在目前的CTP版本中尚未出現(xiàn),希望在正式版中能夠看到。
至于XNA Game Studio類(lèi)型的工程則豐富多彩了,不但有Windows Phone Game,還有Windows Game和XBox 360 Game。
系統(tǒng)的本質(zhì)
我們新建一個(gè)普通的Silverlight應(yīng)用程序,然后在界面上拖拽進(jìn)入一個(gè)Button控件。然后雙擊Button,在其Click事件中編寫(xiě)如下代碼:
MessageBox.Show(System.Environment.Version.ToString(), System.Environment.OSVersion.ToString(), MessageBoxButton.OK);it知識(shí)庫(kù):你必須知道的Windows Phone 7開(kāi)發(fā),轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。