導(dǎo)讀:之前Visual Studio 11開(kāi)發(fā)者預(yù)覽版 發(fā)布的消息收到了眾多技術(shù)人員的關(guān)注和討論。日前VS2011最新的Beta版本在巴塞羅那正式推出。為讓更多人了解相關(guān)內(nèi)容,以及與VS2010所能支持的項(xiàng)目類型比較,CSDN軟件研發(fā)頻道編譯了Microsoft Visual Studio全球最有價(jià)值專家Mark Michaelis眼中的Visual Studio 11 九大新功能。
- 項(xiàng)目兼容(Project Compatibility)
- 高效的IDE(IDE Productivity Improvements)
- 隨處搜索(Search Everywhere)
- 工具欄升級(jí)(Toolbar Improvements)
- 附加工具(Additional Tooling)
- 多核處理器支持(Multiple-Monitor Support )
- 性能提升(Performance Enhancements )
- 新的項(xiàng)目類型(New Project Types)
- 可擴(kuò)展性(Extensibility )
1.項(xiàng)目兼容(Project Compatibility)
Visual Studio2011的向下兼容性讓你不再猶豫升級(jí)你的Visual Studio2010。過(guò)去每次升級(jí)Visual Studio總會(huì)修改你打開(kāi)的項(xiàng)目文件,有時(shí)候甚至只是修改一下版本號(hào),就讓你的項(xiàng)目不再被兼容,雖然在個(gè)人使用時(shí)并沒(méi)有什么大問(wèn)題,但在團(tuán)隊(duì)工作時(shí)卻會(huì)造成大麻煩,只能讓整個(gè)團(tuán)隊(duì)同時(shí)升級(jí)到相同版本。而現(xiàn)在,當(dāng)你把你的Visual Studio 2010 sp1升級(jí)到Visual Studio 11時(shí),不再會(huì)對(duì)團(tuán)隊(duì)造成影響,因?yàn)閂isual Studio 11使用的.NET4.5框架不會(huì)修改舊的項(xiàng)目文件。雖然僅僅支持Visual Studio 2010 sp1互通,卻仍非常實(shí)用。
2.更高效的IDE(IDE Productivity Improvements)
不管你是使用哪種編程語(yǔ)言編程,相信你都會(huì)很快注意到這些高效的功能,也許你會(huì)感到很熟悉,因?yàn)楹芏喙δ茉诩闪薖roductivity Power Tools擴(kuò)展的Visual Studio 2010中已經(jīng)看到。或者你沒(méi)有試過(guò)Power Tools,但是使用過(guò)Eclipse,相信對(duì)此也會(huì)非常熟悉。首先,解決方案管理器有了很大的修改,它不再只是文件的索引,它可以直接在解決方案管理器中查看對(duì)象的結(jié)構(gòu)。比如,你可以展開(kāi)一個(gè)CS類來(lái)直接查看它的成員并且直接打開(kāi)文件相應(yīng)位置。在類成員上右鍵就會(huì)出來(lái)這個(gè)成員的call hierarchy菜單,一般來(lái)說(shuō),這個(gè)菜單會(huì)包括它的基類、衍生類以及在項(xiàng)目中被引用情況,通過(guò)點(diǎn)擊菜單中不同的選項(xiàng)來(lái)查看或編輯文件相應(yīng)的位置。正如你所想的那樣,雙擊要查看的節(jié)點(diǎn)就會(huì)打開(kāi)節(jié)點(diǎn)所對(duì)應(yīng)的文件位置。強(qiáng)大的新的解決方案管理器還提供了預(yù)覽功能。點(diǎn)擊解決方案管理器的節(jié)點(diǎn)就會(huì)打開(kāi)一個(gè)文檔的預(yù)覽。這樣,當(dāng)你只是想預(yù)覽一些文件時(shí)就只會(huì)在一個(gè)公共Tab(標(biāo)簽頁(yè))中進(jìn)行預(yù)覽而不會(huì)打開(kāi)過(guò)多的無(wú)用Tab。當(dāng)然你也可以點(diǎn)擊預(yù)覽Tab的Promote按鈕或者對(duì)它進(jìn)行手動(dòng)編輯從而將它變成普通Tab。

3.Search Everywhere
在Visual Studio2010中雖然已經(jīng)集成了簡(jiǎn)單的搜索功能,作為前三受歡迎的功能,在Visual Studio11中必然會(huì)著重優(yōu)化。
目前已知提供搜索功能的部分:解決方案管理器、擴(kuò)展管理器、快速查找功能、新的測(cè)試管理器、錯(cuò)誤列表、并行監(jiān)控、工具箱、TFS(Team Foundation Server)團(tuán)隊(duì)項(xiàng)目、快速執(zhí)行Visual Studio命令。

4.工具欄的改進(jìn)(Toolbar Improvements )
最顯眼的莫過(guò)于增加了快速啟動(dòng)搜索框,可以直接輸入快速命令。只要鍵入關(guān)鍵字就會(huì)在下拉列表中提示可用命令。甚至可以在其中找到工具菜單。

5.附加工具(Additional Tooling)
Visual Studio新增了幾項(xiàng)新工具都非常引人注目。Visual Studio 11 IDE集成了Expression Blend,極大方便了XAML相關(guān)應(yīng)用的開(kāi)發(fā)。此外Visual Studio 2011提供了一個(gè)嶄新的代碼克隆分析工具,相信VSS的老用戶會(huì)非常熟悉,但是這個(gè)新版本不僅集成在Visual Studio 11中,而且功能相當(dāng)完備。

6.支持多核處理(Multiple-Monitor Support)
Visual Studio 2010雖然已經(jīng)開(kāi)始支持多核處理,但仍有不少問(wèn)題。Visual Studio 2011提供了強(qiáng)有力的多核支持。和新的IE一樣,當(dāng)你把一個(gè)Tab拖到另一個(gè)核心上時(shí),它會(huì)自動(dòng)創(chuàng)建一個(gè)IDE窗口。如果你關(guān)閉再打開(kāi)一個(gè)窗口,它還能很好地恢復(fù)原來(lái)的狀態(tài)。
7.性能優(yōu)化(Performance Enhancements)
Visual Studio 2010中有一個(gè)沒(méi)怎么引起注意過(guò)的多項(xiàng)目并行Build功能,但只局限于C++,現(xiàn)在在Visual Studio 11中,已經(jīng)不用再受編程語(yǔ)言約束了,不論你是用什么語(yǔ)言(Visual Studio 11支持的)開(kāi)發(fā)的,都可以暢快地體驗(yàn)并行Build的效率。從此可以在“最大并行數(shù)”中來(lái)管理最大并行項(xiàng)目數(shù)。Visual Studio 11中msbuild.exe不復(fù)存在,而且由于Visual Studio 11中Build過(guò)程也不再在Devenv.exe進(jìn)程中進(jìn)行,所以Visual Studio 11編譯時(shí)還將會(huì)獲得更好的UI反應(yīng)和更低的內(nèi)存占用。Visual Studio 11中,最大同時(shí)進(jìn)行的Build數(shù)默認(rèn)是等于CPU核心數(shù)的,不建議你手動(dòng)修改這個(gè)值,因?yàn)榭赡軙?huì)造成不必要的矛盾的編譯結(jié)果。
8.新的項(xiàng)目類型(New Project Types)
從專業(yè)的角度來(lái)看是否應(yīng)該從一款Visual Studio 轉(zhuǎn)向另一版本的Visual Studio ,很重要的一點(diǎn)就是比較項(xiàng)目類型。新的Metro風(fēng)格的項(xiàng)目毫無(wú)疑問(wèn)是Visual Studio 11的主推功能。包括Application, Grid Application, Split Application, Class Library 和Unit Test Library。另外一個(gè) Visual Studio 11 就是JavaScript,包括Blank Application, Fixed Layout Application, Grid Application, Navigation Application 和Split Application。當(dāng)然,這些新功能只能在Windows8環(huán)境下使用。值得注意的是,這一版本還是支持窗口程序的,Silver Light也依然存在,仍然是Visual Studio所支持的平臺(tái)之一。還應(yīng)該注意到是,Visual Studio 11甚至包含了便攜庫(kù),這允許跨平臺(tái)的Silver Light和標(biāo)準(zhǔn).NET的跨平臺(tái)開(kāi)發(fā)。另一個(gè)很具代表性的特色就是,所以的新功能都支持C++開(kāi)發(fā),使用C++來(lái)開(kāi)發(fā)Metro界面。但是,Visual Studio 11將不再支持.NET2.0以下平臺(tái),很較早的程序需要重新。
其它具體的項(xiàng)目類型的支持差別請(qǐng)查看文章所附的大圖。
9.可擴(kuò)展性(Extensibility )
- Visual Studio 11提供了相當(dāng)多的插件來(lái)幫助更簡(jiǎn)單地操作。
- Visual Studio Package: 提供舊版本Visual Studio 視圖的插件
- C#/Visual Basic Item and Project Templates: 定制的文檔和項(xiàng)目模板
- Editor Classifier: 自定義文本高亮支持
- Editor Margin: 支持自定義編輯器"margins" UI
- Editor Text Adornment: 支持編輯器自定義圖片裝飾
- Editor Viewport Adornment: 支持畫(huà)板的自定義圖片美化
- VSIX Project: Visual Studio 11的可擴(kuò)展性在Visual Studio Gallery中的體現(xiàn)
- Windows Presentation Foundation/Windows Forms Toolbox Control: 客戶端UI的自定義控制
Visual Studio 11還提供了新的API接口用來(lái)開(kāi)發(fā)插件。和之前透露的一樣,包括可以使用第三方單元測(cè)試工具(XUnit and NUnit)和定制的代碼分析工具。這是微軟開(kāi)放IDE擴(kuò)展的一個(gè)信號(hào),特別是面向開(kāi)源工具。
微軟在做了眾多改進(jìn)后卻刪減了一個(gè)相當(dāng)重要的特性——宏!根據(jù)微軟的報(bào)告,因?yàn)橹挥泻苌俚牡挠脩羰褂眠^(guò)宏,所以Visual Studio 2011 中并不會(huì)默認(rèn)引入宏,但Visual Studio 11將可以通過(guò)擴(kuò)展包引入自定義功能。
從開(kāi)發(fā)者的角度來(lái)看,我們希望Visual Studio 能夠很好地改善開(kāi)發(fā)效率,在這方面,Visual Studio 11并沒(méi)有明顯的改進(jìn)。但在其他地方,Visual Studio 11做了很多改進(jìn),比如:SearchEverywhere、真正的多核支持、先進(jìn)的代碼克隆分析工具,以及解決方案管理器。明確地把重構(gòu)過(guò)的測(cè)試功能也集成了進(jìn)來(lái),并且把測(cè)試窗口全都統(tǒng)一到同一個(gè)單元測(cè)試資源管理器中。
下面是Visual Studio 11和Visual Studio2010支持的項(xiàng)目類型的詳細(xì)比較:

關(guān)于作者:作者M(jìn)ark Michaelis 是IntelliTechture的首席設(shè)計(jì)師和培訓(xùn)師。自1996年,他分別獲得微軟C#/Visual Studio /WindowsSDK方面全球最有價(jià)值專家。2007年,他成為微軟的區(qū)域總監(jiān)。
