你好,這裡是 haryewkun 的個人網站,希望你能夠喜歡這裡的文章。
程式設計:Vista和 XP的差別
[
2007/06/03 04:29 | by haryewkun ]
2007/06/03 04:29 | by haryewkun ]

我覺得,在編程上,Vista 做了最重大的事情,是革掉了延用十年的 Win32 API的命,而代以 WinFX。
Win32 API包含的範圍極廣,無論是字處理、電子郵件、即時通訊軟件、殺毒以至 ERP系統,可以說任何應用軟件,都必然會和它打交道。
所以當 Vista以新的 API取而代之時,它必然也引入了近代的編程架構及理念。它的影響,就好比從 DOS應用,到Windows應用。又或者好似從 C語言,進化到包含了大量虛擬code理念的 .NET平台及 Java平台。
這能夠解釋為什麼 Vista的兼容性問題如此嚴重。Win95、2000、XP都是建立于 Win32 API之上,而 Vista卻是建立在 WinFX API上。(或者该说是主推?)
平台 API 的进化
DOS時代:DOS 5, DOS 6.2
Win3.1 :和 DOS時代 並存
Win32 :Win95、98、2000、ME、XP
WinFX :Vista、以後的版本
也就是說,Vista 只是一個開始。它肩負了微軟未來十年的軟件開發平台的使命。它同時也將會是未來十年內最普遍的程式執行平台。(除非Linux取而代之……)
這同時也能夠解釋,為什麼現在對 Vista程式的改動,大多關注在畫面及界面上的差異。因為 API的改動,最快看到結果的,就是應用新的界面 API。
其他 WinFX API的用途,無論業界或者微軟本身,恐怕都需要相當長的時間探索。要先有軟件廠商挖掘出 API的潛力,做出上一代 API做不到的事情,再回饋到 Visual Studio這些開發平台,Vista-only 才會慢慢普遍化。
Vista 的最大竞争对手
我認為,現在對 Vista最致命的東西,是軟件開發逐漸不再是廠商的主力。現在每個人都 go for internet(我自己也是走網站應用開發)。適合做在網上的應用,誰願意做成軟件版本?
所以我認為 Vista最大的競爭對手,很可能不是 Linux,而是 Google這一類把應用以網站方式呈現出來的網絡公司。兩者的競爭,將發生于對開發人員的爭奪上。
如果大家都往網絡開發網站,應用程式的需求量就會減退,導致沒有足夠的業者,投入資源去挖掘 WinFX API的潛力。畢竟沒有必要放著好好的 XP 不用,而要為自己找麻煩。這樣 Vista系列就會失敗。




