根據微軟針對臺灣地區的調查顯示,由於過去VB推廣得成功,因此市場上有超過一半的開發者,使用微軟的開發工具。然而自NET正式推出至今,已超過兩年的時間,Visual Studio .NET 2005即將在今年第四季問世,但是截至目前為止,仍有半數的VB用戶,未升級到.NET平臺。VB 6.0主流支援於今年3 月底終止

在2004年底,台灣微軟宣佈 Microsoft Windows NT Server 4.0 的支援生命週期將於2004 年底正式結束,依循先前公布的計畫,NT 4.0將在12月31日終止技術支援以及安全更新。當時市場出現了反彈的聲浪,認為這是微軟強迫用戶升級的手段。

事實上,不管是不是一種手段,微軟的產品技術支援週期準則,確實一直依循「5+5」的策略,微軟開發工具暨平臺推廣處應用架構技術經理李匡正解釋:「所謂的『5+5』指軟體產品提供5年主流支援,以及5年的延伸支援服務。」一旦進入延伸支援階段,僅免費提供安全性相關的更新,其它支援則需額外付費。

即使IT技術的演進飛快,然而企業採用的腳步其實很牛步,系統的升級或改寫又都存在風險,只要可以滿足需求,而且效能、穩定性達到標準,並沒有盲目追隨新技術的必要。

不過,商業軟體皆有產品壽命是不爭的事實,微軟自1999 年推出的 Visual Basic 6.0,主流支援至2005年3月31日,並將在2008年3月31日終止延伸支援。隨著VB 6逐步走入歷史,企業用戶即使現在不急著升級,也該對未來終將「改朝換代」的事實有所準備。主從架構的用戶是微軟輔導的主要目標

分析VB的族群,熱愛追逐新技術的用戶,早在.NET推廣之初,就被SOA、Web Services等新名詞吸引到.NET平臺,這些先期採用者,相對比較樂於學習物件導向的觀念,因此以學習C#居多;在.NET逐漸穩定、成熟之際,.NET大多運用在資料庫存取及ASP.NET網頁應用程式方面;而到現在還停留在VB的用戶,多是對VB重度依賴的用戶,以主從架構應用為主,也是微軟希望積極輔導的對象。

李匡正表示:「開發工具版本的轉換,直接影響現有應用程式開發與維護策略,其工程之浩大,遠高於伺服器作業系統轉換。任何一家軟體公司與企業組織,皆需要足夠的準備時間進行轉移作業。」VB開發的主從架構系統,如果是關鍵任務系統,光WinForm可能就上萬個,所以無論程式或介面的升級,還是重新改寫都茲事體大,因此是需要方法和策略的。

最重要的是,企業應先了解VB.NET不支援的功能,再利用升級精靈試行轉移,依據轉移的結果,評估調整需要花費的功夫,最後決定升級或翻新重寫。.NET平臺之上,程式語言一律平等

李匡正強調:「在.NET平臺上,只要符合CLS的程式語言,每一種程式語言對.NET Framework的使用能力是一樣的」。微軟不會特別強調哪一個程式語言比較好,企業可以隨需要、喜好及對語法的熟悉程度,選擇適合的程式語言。 康典資訊彭靖灝直言:「C#才能充分發揮.NET特性是錯誤的說法。」因為在.NET技術中,.NET Framework才是關鍵,程式語言就只是程式語言,無關乎能力。

在.NET Framework之下,所有程式語言一律平等,所以開發人員的重心應放在系統設計,而非程式語言的選擇。正如微軟開發工具暨平臺推廣處產品行銷經理胡德民所言:「只是用不同的語法,描述相同的邏輯。」

.NET Framework是用C#開發的,所以很多人認同C#是.NET平臺上,最原生也最優雅的語言。微軟開發工具暨平臺推廣處協理劉念臻分析:「VB與C#是不同時代的產品,VB在圖形使用者介面剛問世時推出,強調快速開發;而C#是新時代的產物,在開發Web Services方面語法的確比較漂亮。」

兩者差別在VB.NET的可讀性較高,而C#的程式碼比較精簡,效能方面則差異不大,記憶體需求則是VB.NET略比C#多一點,但是並不明顯,這是因為VB.NET會額外附帶VB語言的Assembly檔,因此耗用些微記憶體,但以目前的硬體配備來衡量,並沒有明顯的感受。

事實上,企業選擇VB.NET或C#未必是出自技術觀點。博訊科技軟體開發處經理劉志敏表示:「博訊科技未來選擇VB.NET或C#,是看日本總公司的決定。」不過,劉志敏分析,採用VB.NET的可能性較高,雖然VB與VB.NET差別頗大,但畢竟語法上比較雷同。可見程式語言的選擇,存在習慣、感情與偏好等非技術的主觀因素,不能完全以客觀條件衡量。升級到.NET的好處--可以做到更專業的事

微軟的研討會中,並不特別強調升級的問題及可能的障礙,而是反向高唱ADO.NET的優點及.NET的優勢。原因正是目前所謂的升級勢必包含重寫,胡德民表示:「從VB到VB.NET不只是語法的升級,而是從設計階段的作法就要升級,因此希望企業看得夠多、夠遠之後,自行作出重寫的決定。」

在微軟提出的轉移到VB.NET的理由中,IntelliSense技術的偵錯功能或更快速部署Windows應用程式,企業未必有深刻的感受,因為VB本身也有非常直覺的偵錯功能;XCopy的部署雖有助於控管作業,系統的測試、開發及元件管理,有彼此對照及類比的對象,但企業仍習慣有一個「Setup」程式執行安裝作業,不過微軟解決「DeLL Hell」的夢魘確實是功德一件。至於所謂的強化的升級技術,領教過升級精靈的企業,可能覺得還有待加強。

彭靖灝從實務的角度分析,同意.NET強化了整合開發環境、可以更有效地建立Web應用程式、行動式Web及智慧裝置應用程式,並可直接支援XML Web Services的開發等理由。

ASP.NET提供的視覺化設計介面、事件趨動的程式設計及程式碼後置(CodeBehind)的架構隔離了使用者介面與商業邏輯,的確比ASP更快速、安全地建立Web應用程式。使用同樣的技術及開發模式就可開發行動裝置應用程式,也相對提升生產力。

至於XML及Web Services的開發,臺灣應用的速度沒有那麼快,不過的確會不斷地跟進,而且相關標準也漸趨成熟,只是對於企業也許還算是遙遠的問題,與移轉與否未必有直接的關係。

從軟體開發商的角度來看移轉到.NET真正的好處,是可以做到更專業的事情。過去IT界習慣以語言區分專家,C、C++的開發人員似乎比VB的開發人員「上流」,.NET出現以後,核心同是.NET Framework,就不再以程式語言決定專業。

熱門新聞

Advertisement