2016-06-11 104 views
7

Windows應用商店應用(在Windows 8中引入)和通用Windows平臺應用(在Windows 10中引入)之間有什麼區別。Windows應用商店應用(Windows 8)與UWP

他們從發展的角度分享多少錢。如果我花時間學習如何構建Windows應用商店應用程序,是否可以將這些知識轉移到UWP開發中?

回答

8

我想只是添加一些以前的答案。

主要和重要的是,通用Windows 10應用程序現在編譯爲本地代碼(使用.NET Native Compiler)。

從開發人員的角度來看,Debug和Release之間有區別。 在Visual Studio中調試UWP應用程序時,您正在運行中間語言(使用JIT /即時編譯機器代碼),這意味着快速編譯和部署。 但是,如果您決定在發佈配置中構建您的應用 - 您的應用使用.NET Native工具鏈。這需要花費更多的時間進行編譯,但是對於運行時性能而言,優化更多。

想了解更多,請參見下面的文章:

https://blogs.windows.com/buildingapps/2015/08/20/net-native-what-it-means-for-universal-windows-platform-uwp-developers/

第二個重要的一點是,Windows 10是現在的平臺。您可以創建應用程序並將其調整爲適用於不同的設備。請注意,在Visal Studio之前,您創建了兩個不同的UI項目(Windows Phone和Windows)和第三個帶有共享代碼的項目。現在它已經改變了。目前,這是一個單一項目,您可以在運行時將您的用戶界面調整到不同的設備。Visual Studio現在有一個新的設計時間選項,可以在不同的設備屏幕尺寸之間切換,以查看您的應用的外觀。

現在還有自適應觸發器和設備系列文件夾 - 如果您決定爲例如移動設備上的XAML頁面創建完全不同的外觀,則可以使用這些文件夾。請參考下面的文章從我的博客:

https://mobileprogrammerblog.wordpress.com/2015/10/23/universal-windows-10-application-with-tailored-design-part-1/

也請您查看此頻道9視頻:

https://channel9.msdn.com/Events/Visual-Studio/Visual-Studio-2015-Final-Release-Event/Universal-Windows-Platform-Tailored-Experiences

還有更多的API,如我前面提到的。要訪問特定於所選平臺(如Mobile或IoT)的代碼,您可以使用Platfrom擴展。下面是一篇文章,你可以閱讀更多關於它:

https://mobileprogrammerblog.wordpress.com/2015/07/23/universal-windows-platform/

希望這將幫助你太粗,而當前的知識是非常相關的,所以不用擔心 - 你會需要它! :)

+0

如果您使用C++或C++/CX,則通用Windows 10應用程序始終會編譯爲本地代碼:-) –

2

在我的觀點 - UWP應用程序是Windows應用商店的應用程序(只要您發佈或計劃發佈他們在Windows應用商店!)

我的條款之間更加迷茫 - Windows運行時與通用Windows平臺(UWP)。我現在認爲後者只是前者和更多營銷術語的演變。最大的區別是,如果你願意 - 你可以在多個平臺上運行相同的二進制文件。大部分關於Windows 8/8.1時代的Windows運行時所瞭解的內容仍然適用於Windows 10.您只是傾向於尋找能夠在同一代碼文件中擴展到不同目標平臺的解決方案,而不是針對不同的單獨項目和代碼文件目標。

4

通用Windows平臺使用與爲Windows 8商店應用程序開發的技術相同的基礎。這包括帶有清單的AppX打包,App Container安全上下文,CoreWindow演示文稿模型,相同的AppModel(XAML,XAML + DirectX,DirectX)等。

區別在於UWP應用程序可以在Windows上按「原樣」 10臺PC,Xbox One和Windows 10 Mobile。

開發模式的主要區別在於UWP支持更多的API。有一些API特別是從Windows Phone 8.x中改變了,但是如果你已經編寫了一個Windows 8商店應用程序將它移到Windows 10,那麼它大部分是重新編譯的。您使用VS 2015工具集,而不是VS 2012或VS 2013工具集。

除非您有一些令人信服的需求來支持Windows 8商店,否則我會建議僅使用UWP。對於現有代碼庫,代碼庫的代碼流失較少,因爲UWP支持許多Windows 8商店應用程序不支持的Win32 API。

Dual-use Coding Techniques for Games