Translate

2015/12/31

風水輪流轉,這次又會轉回【Windows-base Client】了嗎?(下) ── 存亡關鍵的最後一哩

簡單的總結一下 Web 和 Apps 的戰爭結果。

*********************************************

自 HTML5 標準推出後,可以說 Web 的戰線越來越明確,在既有的瀏覽器能延伸到哪裡,Web 功能就能夠到那裡。

Apps 就如同是 Windows 的 EXE,想要和作業系統無縫接軌,也只有 Apps 能辦得到。



所以,不論 Web 如何的變化(包含木馬病毒還是千變萬化的廣告),卻使終無法憾動 Apps 在使用者心目中的地位。




就算退一萬步好了:記網址和記 Apps 的名字,哪一個比較簡單?





目前的觀察而言,對使用者來說,Apps Store 是個可以安全又方便取得服務的好方法,這完全要歸功於 Apple 的商業政策以及 Google 後續的推廣。

Google 相較於 Apple,是比較開放,但是「來源不明」的 Apk,始終也像 Windows EXE 一樣給出【不安全】的感覺。

看到這裡,你有感覺到什麼了嗎?



官方認證的 Store,讓您安全又放心!
(好像是廣告口號……算了)



一旦開發的 Apps 能在 Store 上架,就像吃了無敵星星一樣:

「只有使用者不想要,不會有使用者不敢拿的問題」

但也有可能吃到派大星就是 (大誤)
(圖/翻攝自 enjinight.deviantart.com)


比起 Web 和 EXE,《官方認證的 Apps》,更能讓使用者勇於嚐試你的新產品。


Windows 的機會


軟確實是嗅到 Store 的商機,從 Windows 8 就可以看出微軟強烈的企圖心。




可惜,路線明顯的錯誤:


複製像 Apple 的 OS X 和 iPhone 各創一個 Store,身為第三位追隨者的微軟已失去先機,事實證明 Windows 8 已經失敗。

這次,微軟做了兩件大事:
  • Visual Studio 開放原始碼,免費公開使用
  • Windows 10 強勢推出


其中,看起來有件事情是對的了:
【開發程式猿不是微軟的敵人】


在 Windows 8 的這段過渡期間,看到微軟使用很多免費的手段,想吸引程式猿們的青睞,加入 Windows Store 的行列。

不過非常少人使用是事實,習慣 Windows UI 風格的使用者不會這麼快去接受新的概念。

Visual Studio 開放原始碼,在某些角度來看,確實是減少窮酸程式猿的成本。

Windows 10 和 Windows 8 除了【不再區分 RT 版】這個特色外,還有另一個很有意思的訊息:

【通用應用程式(Universal Apps)】

用應用程式】是一個殺手級概念,簡單的說,就是寫一套程式就可以在 Windows 各平台上使用,這將會是 Windows-base 程式猿一個新的契機。

寫一套 Apps 上到 Windows Store 就可以讓使用者下載安裝,這不論是對開發者(一次開發多平台使用)、使用者(從 Apps Store 下載不用傷腦筋安全問題)、平台提供者(收租金收租金收租金...),都是有利的,可以說是三贏的局面。

然而,目前看起來【通用應用程式】還有很長的路要走,因為僅限在 Visual Studio 下所創建的專案才「有機會」享受到這個服務,對於現在還在使用的【非 Dot Net 開發的工具】如:Delphi、Visual Basic 6、PowerBuilder 等,到目前為止都還沒有提供解決辦法。


【開發程式猿不是微軟的敵人】

如果未來微軟真的能提供「非 Dot Net 開發的工具」整合並能和 Windows Store 接軌的方法,我相信和 Windows 脣齒相依的 Windows-base 程式猿,也一定會回心轉意,共同力拱 Windows 平台,把失去的故土收復。


【整合並吸納所有在Windows的開發語言和工具】,是微軟目前的翻身機會,只有現在留在Windows的程式猿,能幫 Windows 重回市場。


微軟和 Windows-base 程式猿就是水幫魚、魚幫水的共生關係,其關鍵就是那【最後一哩】!
最後一哩的開放與否,全在微軟的一念之間。(圖/翻攝自Clutchcargo.us)



風水輪流轉,這次又會轉回【Windows-base Client】了嗎?


《全文完》

1 則留言:

  1. 寫的很好,受到你的啟發,有空在我的BLOG寫我的看法

    回覆刪除

DataSnap REST API Authorization with PHP

About Authentication with DataSet REST JavaScript client. In connection.js: function setCredentials(user, password) { connectionInf...