走進廚房,才知道食材的好壞...

 

前幾天應邀到社羣舉辦的講座,介紹雲端運算與行動裝置的整合,席間提到了Silverlight技術,不免又有一些開發人員問到這樣的問題:『聽說...微軟對Silvrlight的支持和更新將會如何如何...,這部分開發人員要如何因應』?

面對這類問題,我最近一年少說不只回答了10次,首先,『聽說』這個前提就很是問題,雖然報紙偶而會有猜對的時候,但捕風捉影總是佔了大多數。

另外就是開發人員要如何因應這種事情。

我始終覺得,沒什麼好因應的,開發技術本來就是這樣,特別是表示層開發技術,我在這篇文章中曾經說過,表示層技術的持續精進與改變是必然的趨勢。你回頭看,Wii和Kinect都是最近這幾年才發生的事情,但現在已經開始慢慢出現在我們LOB應用的UI裏面了。而觸控技術早就有了,最近五年纔出現在手機上,如果回頭看過去20年,從黑底白字的文本模式,到Mac/Windows的圖形接口,到現在的RIA(Rich Internet Appication)開發技術,少說有沒有換過10種開發方式?

請開發人員接受一個事情,就是presentation(表示層)的UI開發技術,是每隔兩三年就會大改一次的,ASP.NET從2002年誕生到現在,共四個版本,也不過八九年,中間還有AJAX技術進來攪局和jQuery的崛起,還有現在的MVC設計模式,這些技術都是持續在精進與改變的,不多人在2005年之前,會預知後面AJAX應用成長的那麼快(中間也跟因特網帶寬與行動裝置拖不了干係),而現在也不多人能100%論定是否HTML5將變成未來可能的一種趨勢。

如果你比較Flex/Silverlight/HTML5,然後開始聽到iOS對Flex有些疑惑,Silverlight沒法跑在iOS和android上,HTML5又不夠成熟,那怎麼辦? 要投資哪一個? 哪一種技術可以讓你長治久安?

長治久安? 答案當然是沒有! 沒有一種開發技術是可以讓你在這個變動迅速的時代,軟件生命週期爆低的世代,可以長治久安的。沒有!

但你確實可以選擇一個對自己來說投資成本比較低的方案,例如,着眼在跨平臺,不同的device對你來說差不多,只是呈現出一個接口,你不會用到Device上的LBS或Camera,大部分的運算在服務器端,那ASP.NET/JSP/PHP依舊是比較好的選擇。如果,你要建置的是企業內的LOB,你可以掌握幾乎所有客戶端的狀況,而過去你是.net的開發人員,那Silverlight絕對是不二選擇。其餘均可類推...

不同的技術就是用在不同的scenario,彼此之前從沒有衝突,(我們沒有說Silverlight是用來取代ASP.NET的,兩者甚至依舊常常合作),微軟的開發技術大多進入障礙低,這其實是一種設計過的優勢,我們希望開發人員不要花很多時間『一直在』學新技術,而是能夠很快地就去『用』新技術,去動手開發出點什麼可以改善這個世界的信息產品。(寫這篇文章的人,顯然對.NET不是很熟)

在許多人還在爭論Silverlight的前途是否未明之前,我們公司的產品已經把Silverlight技術用的淋漓盡致(有點誇張我承認,但我一時之間找不到類似的詞,請包涵),那你說我們會不會不管HTML5? 當然不會,她依舊是我們下個世代產品的表示層技術考慮之一。

因爲我們熟悉Silverlight開發技術,在Windows Phone 7上我們的開發成本相當低,接下來的Windows 8,由於採用了XAML,對於熟悉Silverlight的我們來說,將Application(or Apps) Porting到Win8上當然也不是問題。

很多開發團隊或人員,針對Silverlight開發技術的評估,其實坦白說並不認真,因爲從2007年Silverlight出現到現在,始終停留在『評估』的階段,而這三年,已經有數以萬計的產品(包含微軟自己的Windows Azure管理平臺)是100%以Silverlight技術打造的。

我要說的是,如果你始終只停留在評估,那不如就乾脆放棄了吧,因爲在你評估的同時,很可能競爭對手已經開始實作、已經開始推出產品。我總是覺得,與其花時間看遍報章雜誌去研究一個技術的未來,不如親自動手直接用這個技術開發點什麼。這是技術人員的本質,『評估』絕對不只是收集收集資料,綜合一下大家的意見就好。對技術人員還說,評估是親身的體驗,是自身的感受。

畢竟,走進廚房,你才能真正知道這些食材與調味料的好壞...

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章