.NET Framework架構鏈接庫釋放后的變化分析
.NET Framework架構鏈接庫即將會向大眾進行開源。那么在它實現了開源后會給開發人員和IT業界帶來什么樣的影響呢?這只能要我們拭目以待了。不過總體來說,.NET Framework架構鏈接庫的釋放還是一個非常好的消息。#t#
Scott Guthrie在去年10月就發表了此一計劃,當時指出開發人員透過這些開放瀏覽的源碼可更了解.NET架構程序如何被應用,以調校所開發的應用程序以及進行.NET架構除錯。
此次微軟所釋出的.NET Framework架構鏈接庫包括.NET Base Class鏈接庫(涵蓋System、System.CodeDom、 System.Collections、System.ComponentModel、System.Diagnostics、 System.Drawing、System.Globalization、System.IO、System.Net、 System.Reflection、System.Runtime、System.Security、System.Text及 System.Threading等)、ASP.NET(涵蓋System.Web、System.Web.Extensions)、Windows Forms(System.Windows.Forms)、Windows Presentation Foundation(System.Windows),ADO.NET及XML(涵蓋System.Data與System.Xml)。
Scott Guthrie并指出,微軟仍打算提供其他的架構鏈接庫,諸如LINQ、WCF與Workflow。
微軟開發者部門總監Shawn Burke則在另一個部落格中展示如何在Visual Studio 2008設定以存取這些.NET Framework鏈接庫。完成設定后,開發人員就能動態下載.NET Framework鏈接庫的除錯符號及程序代碼檔案,這些程序代碼檔案中同時也包含了開發人員所下的批注或評論。
微軟釋出.NET Framework架構鏈接庫似乎像是向開放源碼靠攏,不過,對于這些鏈接庫的存取,微軟采用的是微軟參考授權(Microsoft Reference License),該授權的意義在于那些被授權的開發人員可以下載并瀏覽這些源碼,但并不允許直接進行修改。
Scott Guthrie在聲明中提及許多使用者關心可讀取這些源碼所帶來的影響,并進行澄清,他指出在該授權中進行了一些更動,特別指出該授權不適用于在一個與. NET架構一樣或大體上一樣功能的非窗口平臺上的軟件開發,不過,若開發人員所開發的軟件是針對窗口平臺,那么,就算該軟件與.NET一樣或具備與. NET大體上一樣的功能,那么開發人員仍可檢視該程序代碼。
在此一聲明公布后,不少討論區及部落格認為這代表微軟打算杜絕其他平臺利用此一程序代碼開放計劃,例如Mono。Mono為一免費的開源開發平臺,藉由虛擬機技術讓.Net應用程序可在Windows、Linux及Mac OS X等不同的平臺上執行,它擁有.NET相容的鏈接庫及第三方類別庫。