天天看點

“WPF老矣,尚能飯否”—且說說WPF今生未來(上):擔心

近日微軟公布了最新的WPF路線圖,一片熱議;對于老牌控件提供商葡萄城來說,這是WPF系列控件一個重要的機遇,是以,Spread Studio for WPF産品做了一次重要更新,并随着Spread Studio 8.0釋出。鑒于此,選擇翻譯并整理了一篇自codeproject的文章:《Is WPF dead: the present and future of WPF​》,抛磚引玉,且聊聊程式員心目中的WPF。

本文有葡萄城技術團隊部落格原創并首發

轉載請注明出處:葡萄城官網,葡萄城為開發者提供專業的開發工具、解決方案和服務,賦能開發者。

近日微軟公布了最新的WPF路線圖,一片熱議;對于老牌控件提供商葡萄城來說,這是WPF系列控件一個重要的機遇,是以,Spread Studio for WPF産品做了一次重要更新,并随着Spread Studio 8.0釋出。鑒于此,選擇翻譯并整理了一篇自codeproject的文章:《Is WPF dead: the present and future of WPF​》,抛磚引玉,且聊聊程式員心目中的WPF。

“WPF老矣,尚能飯否”—且說說WPF今生未來(上):擔心
“WPF老矣,尚能飯否”—且說說WPF今生未來(上):擔心

引​子

作為一個老牌WPF程式員,​​多年來一直關注的問題是,在微軟釋出最新的WinRT架構之後​​​​,接下來的用戶端程式設計将何去何從。

​​顯然我有充分的理由擔心這個,衆所周知的Silverlight的中途擱淺,它對下遊的開發人員帶來了很大的損害;俗話說:一朝被蛇咬,十年怕井繩。這就是真實寫照。

​​​​​我從2009年開始就對WPF投入很大的精力,使用它開發财務相關的行業軟體,如今,我依然還在這裡,但是焦點轉向了教育訓練相關工作。作為專業開發和教育訓練講師,WPF的将來對我來說至關重要,這也是我深入思考這個問題的根結。

​本文我将本着客觀和透明的方式​給大家分享我所的發現和感悟,希望起到抛磚引玉的作用,以此為社群提供更好的有前景的WPF。

另外,在本文的結尾,我将為企業和個人開發提供一些政策和個人見解。​​​

​​​​有理由擔心

首先,我将展示那些我所擔心的标志性信号,如果你是一個WPF的利益相關者,這也會是你所擔心的。

​​​WPF團隊部落格斷更

如所有微軟的技術團隊一樣,WPF團隊也有自己的部落格​,主要話題集中在向社群分享團隊内部成員在WPF上的各種經驗。

該部落格的最後一篇文章發表于三年前,2011年五月,或者另一個精确的說法是當WinRT宣布開始并作為下一個重大目标的時候。

一個斷更的部落格會暗示很多問題,恕我直言,從來沒有好的方面的:或許這個團隊被縮減到極小,以至于部落格被擠出任務優先級清單了;也可能是最優秀的團隊成員已經轉到其他項目,比如WinRT;更甚者,或許這就是團隊隐晦的給社群傳遞出來的信号……

從公共關系角度來看,一個活躍的團隊部落格是很基本的點,因為它對外展示了技術發展和忠實的開發團隊向社群主動表達工作的滿意和分享的意願。

你或許已經注意到微軟的MSDN部落格其實并不活躍,為數不多的例外是EntityFramework團隊部落格,這應該歸功于經常更新博文的Rowan Miller,而這恰恰就是我一直偏愛這項技術的一個主要理由:這是一個天才團隊和有責任的團隊開發出來的。

官方W​​PF Toolkit不再更新

WPF Toolkit是一個由微軟團隊開發的開源免費項目,目标是WPF的重要輔助套件和前哨。

“WPF老矣,尚能飯否”—且說說WPF今生未來(上):擔心

一個很典型的例子是DataGrid控件,在WPF的起初的發行(WPF3.0和WPF4.0)是沒有的,但在Toolkit裡面有,到後來,最終WPF4.0把它放到正式的發行裡了。

官方的Toolkit一直扮演這樣的角色一直到2010年,但是自從項目開始清減之後,也就沒有什麼人關注所謂的下一版本的釋出了。

表現出不活躍的信号是:Google搜尋引擎對關鍵字“WPF Toolkit”的排次把官方的toolkit放第二,而第三方的反倒占據第一(本文第二部分會有更細節的描述)

WPF不再進行認證考試​​​

​官方的WPF認證考試(70-511)已經不在延續,并将在2015年夏天終止。

這給開發人員一個強烈的明确信号,就是不要在該項技術上投入了,相應的可以考慮投入時間和精力到WinRT上,這樣才會從認證考試獲得回報。

或許将來某一天微軟會推遲這個認證考試的吊銷,正如他們曾經做過的,在收到大量社群開發者的訴求之後會有一定的妥協,但是都不可避免的是,WPF已經不在重要。​​​

就我個人而言,我一直很猶豫要不要過這項認證考試,因為我實在無法保證時間和物有所值(是的,我自己付費)。反而很堅定的認為可以準備WinRT的認證考試,因為它在将來的幾年都會是有效。​

​不再提供Window 8+系統內建​​

回想WPF4.0釋出,同時釋出了很多的Window 7系統相關的內建和增強,比如工作列定制(彈出清單,進度,遮罩等等……)。

但是當WPF4.5到來時,卻沒有給Window 8+系統功能做完全的內建,比如​則邊欄(Charm Bar),大多數應用隻能通過互操作來互動。

是以,微軟沒有投資在這些內建工作上,這很明顯的揭示WPF已經不再是Window系統的一等公民,實際上它首選投入WinRT的懷抱,個人認為這是一個合理的決策。

​WPF不支援WinRT​​

​​​​​微軟,這個曾經的老牌軟體供應商,如今業務多樣化,開始成為一個硬體供應商,效仿它的競争者蘋果和三星。

為此微軟收購了諾基亞,以期獲得移動市場的長期席位。

在平闆和筆記本這方面,為了和蘋果的iPad平闆和MacBook Pro筆記本相競争,微軟推出了Surface系列。

Surface 一代和二代根據硬體架構(x86和ARM)分成兩種版本,​而後者對應有了自己的專有系統:Windows RT(不要和作為軟體層的WinRT混淆);但是Windows RT不支援(至少官方不支援)老的應用接口,比如優秀的老式Win32接口,是以也不支援在此基礎上“包裝”出來的衍生技術,像WinForm等等,當然包括WPF,是以無法在Surface版本上運作WPF應用程式。

微軟不在此投入理由很簡單,就是它想在最新的IT趨勢中去除Win32,讓量身定做的WinRT代替。

完整系列文章:

  • WPF老矣,尚能飯否——且說說WPF今生未來(上):擔心
  • WPF老矣,尚能飯否——且說說WPF今生未來(中):政策
  • WPF老矣,尚能飯否——且說說WPF今生未來(下):安心

相關閱讀:

微軟 Build 2017 開發者大會:Azure 與 AI 的快速發展

是什麼讓C#成為最值得學習的程式設計語言

從Visual Studio看微軟20年技術變遷

C#開發人員應該知道的13件事情

Visual Studio 2017正式版釋出全紀錄

“WPF老矣,尚能飯否”—且說說WPF今生未來(上):擔心