|
微軟初次開發第一個Windows軟體的時候,並未在應用程式的整合上做太多的著墨,隨著時間的推演,這種簡單的作業模式再也無法滿足日趨複雜的軟體需求,為了解決這個問題,微軟提出COM的架構,企圖解決下列兩個問題:
1. 提供一個二進位的標準,以供不同的語言可以透過相同的界面來共同運作。
2. 透過DCOM協定來允許跨行程及跨機器的處理工作。
如今,在Windows的環境中,已有許許多多不同的人馬為了不同的目的,開發了數以萬計的API函數。有些API函數以簡單的形式放在DLL檔中供程式設計師來取用,有些則以COM的形式被重新包裝以供使用。這當中陸陸續續地,有很多的程式庫被開發出來,提供給不同的程式開發者,可以簡化其手邊的工作,如Microsoft
Foundation Classes、Microsoft ActiveX Template Library、Microsoft
Visual Basic Library及Borland的Object Window Library 等等。
而WWW的起飛與隨後之軟硬體技術的進步,讓網路上的資訊流通不再只是簡單的HTML網頁,取而代之的是更多可以在瀏覽器上或者是在伺服器上執行的動態網頁。微軟在其作業平台上也致力於這個市場的搶攻。現在,透過瀏覽器讓使用者和網頁應用程式做面對面的交談,其功能及反應的時間都比以前好了許多,微軟也因此在動態網頁的應用上佔有一席之地。
一般說來,Windows Application有比較豐富的使用者互動界面及快速的執行反應,然而Web
Application則有兩大特色,其一是,部署的便利性;其二是,有較多內建的媒體整合支援技術,例如它在文字、圖形或多媒體資訊的展現上都有不錯的表現,不過,Web
Application在與使用者互動的反應上稍嫌不足,另外,無法離線處理也是它的缺點之一。而整體說來,因為在網頁的程式撰寫技術上所提供的程式語言及相關的程式庫仍然有限,所以撰寫Web
Application,對大部分的程式開發人員而言仍是一件苦差事。
Microsoft
在2000年提出.NET的口號,宣稱有了.NET之後,我們就可以在任何時間、任何地點以任何的裝置取得我們所要的任何資訊。
為了完成這一項承諾,微軟在.NET Framework
中加進了很多新的想法與做法。不過,從某一個角度來看,其實.NET是將許多Win32
API以物件導向的技術重新封裝起來。然而,在.NET中,微軟以更有效率的方法,不只延伸了Win32 API原有的功能,同時在ASP.NET及Web
Services這個領域上有更多的創新與改進,並重新包裝以新的風貌來讓程式開發者有更好的開發模式。
現在,微軟為了解決前面所提到的Windows Application及Web Application
的缺點,及保留、強化兩者的優點,微軟提出了新一代的Longhorn
作業環境,企圖提供一個統一的架構,讓發展者只透過一個單一的程式開發模式,就可同時支援各種軟體形式的產品開發(如Documents-style,Application-style,Media-style)。以後,我們可以像寫Web
Application一樣,以標記語言的方式來建立UI的程式;和Web
Application一樣,以簡易的方式來部署程式。對於這樣一個全新的開發環境,是否誠如微軟所言可以給資訊從業人員一個更好更完整的解決方案,且讓大家拭目以待。
|