WPF 的 Roadmap - 現在及未來

The roadmap for WPF!

WPF 會持續加強並變得更好! 許多開發商/軟體團隊使用 WPF / XAML 技術,至少我就看過了包括 POS、Embedded、電子看板、企業 ERP及工廠自動化的應用,還有現在談話性節目上的大看板。讓我們來看一下 WPF 的 Roadmap,從現在到未來!

參考原文出處 - The Roadmap for WPF

------------------------------------------------------------------------------------------------------------------------------------

當我們在 2006 年時,於 .NET 3.0 版本中介紹了 WPF 技術,開發者的反應非常熱烈,它讓企業及軟體開發商開發各式各樣的商業應用,在不同的行業中的各種關鍵性應用系統 ; 直至今天 WPF 受歡迎的程式仍在持續,過去 60天 (2014/11月),有 10% 的新專案 (使用 VS 2013) 是 WPF,這是很高的比例! WPF 讓開發者建立 data-centric 桌面商用應用程式。最近一些案例,包括 - InterKnowlogy. 這個應用最近被 CNN 製作團隊採用於選舉投票 (mid-term elections) 展示程式,上傳/驗證/設定資料呈現於這個即時線上程式。選舉資料會展示於 CNN’s Magic Wall 展示牆, 由 Microsoft 的 Bing Pulse 團隊協助開發。

本文說明了 WPF Platform 的藍圖,接下來會持續改進 performance、更好地支援新版 DirectX、更好地支援新一代的設備(例如 multi-touch, 高清高像素顯示 ...)、Visual Studio + Blend 工具加強 ...

WPF 平台持續投入及加強的領域

依據許多來自各方的 Survey,來自於過去幾個月,包括今年的 //build 大會及自 UserVoice 的建議,並與大量的 WPF 開發者面談的回饋,我們將重心投入在以下領域,以持續讓 WPF Platform 更好!

  • 效能 (Performance) -  WPF 目前常被用來開發大型及高效能的應用,包括微軟自己的工具 Visual Studio 及 Blend 也是用了 WPF 技術,持續地改進效能是來自客戶的回饋,也是我們的重點工作。 包括了 "應用程式的啟動時間優化“、“針對 ItemsControls 的捲動及視覺化的效能”
  • 與 DirectX 的互通性 (DirectX interoperability) -  讓 WPF 應用程式能與新版的 DirectX 達成更高的互通性。
  • 支援新一代的硬體裝置 -  例如觸控及高密度的顯示裝置 (high density displays),為了能更好地支援新一代的硬體裝置,讓既有的 WPF 應用能夠運用到針對桌上型機器的新硬體功能之好處。
  • 工具的加強及改善 -  當新的平台或版本演進時,如 .NET/WINRT,我們會一併強化 WPF 的開發/設計工具。

有些改進可能會與特定的 OS 版本有關,在這類的情況,該功能只有在你選擇性採用時才會啟用。

關於 WPF 的現在進展

先來說說 Support 支援性。WPF 是 .NET Framework 的一部份,而 .NET Framework 已被定義為作業系統的一個元件 (a component of the operating system),而非獨立的產品,因此 .NET Framework 的支援週期 (support lifecycle policy) 將與 Windows 作業系統一致,以目前 .NET 版本 (4.5.2) 執行在 Windows 8.1 而言,它的延伸支援 (Extended support) 將到西元 2023 年。我們將持續地修正安全性問題及客戶回報的bugs,以提供更好的支援。

WPF 品質的改善

改善 WPF 是持續不斷地進行的,以下是一些範例,將在未來 Visual Studio 2015 及 .NET 4.6 版本中發表:

一些在 .NET Framework 4.6 版本中 WPF 的改進範例:

  • Multi-image cursor file 的支援,在 System.Windows.Input.Cursor 之中
  • 支援透明性的子視窗 (Support for transparent child windows)
  • 改善了 double tap gesture 辨視 - 透過從註冊表使用共用的 threshold distance
  • 改善了 文字選取方式,透過 雙墼 (double tapping) WPF TextBox control
  • 改善了 可靠性 - 關於 stylus input for the WPF ComboBox control

我們在乎您的回饋!

我們目前正在研究一些可靠性問題,並且透過票選機制,從 Connect 使用者回報平台中,這些將在未來的版本改進。

問題及回報

票選數

WPF Touch Event Fires with Delay

29

WPF Ribbon Window: The border is too thin

18

Using BitmapFrame.Create with any TIFF file allocates 300MB of RESERVED MEMORY if Microsoft Camera Codec Pack is installed

12

工具的改善

在透過 UserVoice 機制的回饋中,前5個建議當中,有 3 個是關於 XAML tools 類別

視覺化檢測功能 (Visual Diagnostics) - 在回饋中,WPF 應用的 UI debugger 是關於 XAML 工具前幾名的需求。很高興我們建立了完整的除錯工具,當除錯時你可以視覺化檢示樹狀,並修改元素的屬性值,甚至你可以保留這些變更,回到你原本的設定。

VisualDiagnostics3

程式耗時工具 (Timeline Tool) - 另一個常見的需求是提供更好效能的檢測工具 ( diagnostics tools for WPF)。我們正在開發一個新的檢測工具,讓你可以找出應用程式開啟時的問題,例如不佳的 frame rate、或其它常見的效能問題。與現有的工具 - 記憶體使用 (Memory usage) 及 CPU 使用 (CPU usage) 工具,我們將在 Visual Studio 提供一個完整的工具組,幫助你開發一個又快又流暢的 WPF 應用程式。

Performance and Diagnostics Hub2

Timeline Tool Zoom

Blend 工具改善 -  Blend for Visual Studio 2015 重新設計,它是用來設計一個漂亮的 XAML 應用程式 UI 的建議工具。Blend 會有一個新的外觀,將與 Visual Studio 較一致,並改善這兩個工具使用上的工作流程。另外,Blend 與 Visual Studio 一樣,也是用 WPF 技術所打造,會改進一些地方,包括: 更好用的 Solution Explorer 方案總管,以及程式碼管控; 更重要的是 XAML IntelliSense 及基本的除錯工具。這些改進的動機來自於,當使用 Blend 打開的一個大型專案時,速度更快,採用非同步的載入方式 (asynchronous solution load),並且支援企業內常見的版本管控。In-place 範本編輯也會支援 WPF,而且使用經驗也會再調整的更好,以支援即時編輯能力 (使用 Peek in XAML)

Blend

目前在 Visual Studio 2015 Preview 預覽版中,還沒包括以上檢測工具,這只是先預告我們將改進這些領域並很快地發佈!

參考原文出處 - The Roadmap for WPF