專家對VS 2008代碼詳細解析
VS 2008代碼為研發(fā)數(shù)據(jù)庫的技術人員對Team System承諾,提供相關工具,這樣可以為整個軟件開發(fā)周期少了不少彎路,降低工作的復雜性。
在上次Blog的評論中,VS 2008代碼有人稱贊道:確實,調試方便了不是一點點;這真是太cool了;很好,期待很久了!不過也有這樣的評論:買一張MSDN就可以了。實際上,MSDN中并沒有包含將發(fā)布的.NET Framework的源代碼。
這項服務還在最后的調試階段,很快就會對外發(fā)布。VS 2008代碼我在這個周末通過Visual Studio 2008使用了這一服務。對于.NET程序員來說,這真的是非常有助于調試,也提供了軟件開發(fā)時候很有價值的參考。
為了在VS 2008代碼中使用此服務,有以下幾個要點:
1. 在Debugging | General 選項中,不要選Enable Just My Code (Managed Only).
2. 在Debugging | General 選項中,選擇Enable source server support.
3. 在Debugging | Symbols 選項中,添加Microsoft Reference源代碼服務的URL。 正式的URL很快會對外發(fā)布。 首次使用時需要接受2個License:一個是symbol,另外一個是Source. 這樣在調試程序的時候就可以看到.NET Framework的源代碼,也可以在調試時跟進(Step into)。
比如說WinForm的Button.cs就被下載到\src\source\.net\8.0\DEVDIV\depot\DevDiv\ releases\whidbey\REDBITS\ndp\fx\src\WinForms\Managed\System\WinForms\Button.cs \1\Button.cs。從文件夾的結構可以看到,.NET框架3.5下的WinForm代碼實質上還是Whidbey即.NET 2.0。但的確有了一些更新。REDBITS下是.NET 3.5發(fā)布時候的代碼。 即使將Winform的項目的Target Framework改成2.0或者VS 2008代碼,我們一樣得到上述的Button.cs. 這是因為REDBITS在安裝時取代了早先2.0的程序集。 #t#
在WPF下的Button.cs被下載到\src\source\.net\8.0\WIN_WINDOWS\ lh_tools_devdiv_wpf\Windows\wcp\Framework\System\Windows\Controls\Button.cs \1\Button.cs。雖然現(xiàn)在WPF屬于DevDiv的一部分了,從這個文件夾的結構可以看到以前WPF是隸屬于Windows的。 在代碼的格式上,您也一定能夠看出DevDiv和Windows的區(qū)別。
VS 2008代碼除了在文件中添加了幾行版權聲明:
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
您看到的VS 2008代碼與微軟內部能夠看到的代碼是完全相同的。那些代碼中的注釋,還有對private或者internal members的說明,都是在此之前無法從MSDN的文檔中得到的信息。 當然沒有任何代碼是十全十美的。我已經注意到標有HACK HACK HACK注釋的代碼了。 閱讀代碼對程序員而言是一件有趣的活動。隨著Microsoft Reference源代碼服務的推出,我們有更多的閱讀材料了!