前言
Visual Studio是微軟最知名的產品之一,在使用微軟技術的開發人員的心目中尤為如 此。相信這一點無須多說。它建立在IDE(統一開發環境)的基礎之上,可用於開發多種 不同類型的應用程序。
Visual Studio,通常被簡稱為VS(以下皆按此簡稱),支持多種平台和編程語言。了 解VS的歷史以及每個版本的更迭,對學習它的擴展性開發會很有好處。所以在這裡簡單地 說說VS在過去的12年裡的歷史。
VS的歷史
在軟件領域,VS的歷史算比較長的了。在此期間,微軟開發了數種編程語言和支持這 些語言的可視化IDE,將其稱為“Visual Studio”。當然,VS在12年間已經有了發生了很 大的變化,不僅僅是它本身變得強大,與語言和其它技術的集成也得到了增強。除了這些 ,微軟還添加了一些特性來支持數據庫開發、標記語言(如XML)、Web開發工具、單元測 試和團隊協作。
接下來將逐一介紹微軟已經正式發布的六個版本。
VS 97
微軟在1997年首次嘗試在單一環境中支持多種語言。它包括如下組成部分:
Visual Basic 5.0
Visual C++ 5.0
Visual FoxPro 5.0 (用於xBase編程)
Visual J++ 1.1 (用於Windows下的Java編程)
Visual InterDev 1.0 (用於ASP開發)
MSDN
Visual C++、Visual J++、Visual InterDev和MSDN使用相同的環境,名為Developer Studio,而Visual Basic和Visual FoxPro則擁有自己的開發環境。VS 97的內部版本號為 5.0。
VS 6.0(98)
在1998年,微軟嘗試將開發工具變得更為一致,並且向著現在我們所熟知的.NET Framework邁出了第一步。這一年微軟將VS 97升級為VS 6.0。
這個版本是VB的絕唱,因為現在的VB.NET在基礎上與那時的VB有很大不同。VS 6.0 也 是Windows 9x平台下VS的最後版本。同時Visual J++ 遭到徹底放棄,從此微軟不再支持 針對JVM(Java Virtual Machine)的任何編程語言(但兩三年後我正是在Visual J++下 寫出了我的第一個Hello World程序)。
在此之後,微軟便致力於通過.NET Framework構建統一的編譯器和開發環境。
VS 2002
2002年是微軟的開發工具和編程語言發生重大變革的一年。經過之前數年的努力,微 軟發布了.NET Framework、VS.NET、.NET編程語言。這標志著微軟的開發工具終於得到了 完全的整合。
其中.NET Framework 1.0是最重要的內容。它引入了托管代碼,在.NET下,程序是編 譯為MSIL(微軟中間語言)而不是機器語言。
VS 2002(內部版本號為7.0)是第一個需要基於NT版操作系統的VS版本。它支持以下 四種語言:
VB.NET:這是Basic家族中第一個完全支持OO的語言,它的構建基礎與VB 6.0有很大不 同,至今VB.NET仍是世界上最流行的編程語言。
C#:一種全新的語言,此後它的用戶群體在不斷擴大。它使用C的語法,但比微軟其它 C家族的語言要簡單,如VC++。
J#:也是一種新語言,可以看作是VJ++的繼任者。它雖然使用Java語法,但只支 持.NET平台。
VC++:它是.NET家族語言的一分子,並得到了增強。
使用這些編程語言和統一的編譯器,加上.NET平台下豐富的其它工具,可以開發各種 桌面、Web和嵌入式設備的應用程序。其中包含的技術有ASP.NET、ADO.NET和Web Service 。
VS 2003
在VS 2002發布之後一年,微軟發布了VS 2003(內部版本號7.1),支持新版本的.NET 1.1。.NET 1.1 支持移動應用程序開發,也包含一些新特性和bug修復。它是.NET Framework的第一個穩定版本。VS 2003要比VS 2002穩定和流行得多。
VS 2003共有四個版本:
Professional
Enterprise Developer
Enterprise Architect
Academic
Enterprise Architect版提供了對Visio的支持,從而可以在設計應用程序架構時使用 UML。
VS 2005
2005年10月,微軟發布了.NET 2.0和VS 2005(內部版本號8.0,曾用過的代號為 Whidbey)。此時,微軟移掉了其產品的“.NET”前綴,如Visual Studio和Visual Basic 。
VS 2005支持.NET 2.0,重要的特性和變化有:
ASP.NET 2.0
ADO.NET 2.0
Generics in .NET 2.0
Enhanced IntelliSence
Addition of new project types
A local web server to test ASP.NET applications without IIS
Support for 64-bit applications
另一個主要的變化在於,它的版本劃分方式與之前有所不同,包括:
Express
Standard
Professional
Tools for Office
Team System
微軟在2006年12月發布了VS 2005的SP1。應眾多社區用戶的要求,將Web Application 替代Website作為ASP.NET應用程序的默認項目類型。
在2006年微軟發布了.NET 3.0,因為VS 2005是當時的最新版本,所以提供了插件使其 支持WPF、WCF和WF的開發。
VS 2008
這是迄今為止VS的最新版本(第六個版本),內部版本號9.0,代號Orcas。下個版本 的VS 2010(代號Hawaii)正在開發之中(據信會在今年的年底發布)。
它第一個支持不同的.NET版本,包括2.0、3.0和3.5。VS 2008主要關注的是Vista和 Office 2007,還有些.NET 3.0和3.5的新特性,並保持了VS 2005的優點。它的新特性和 變化有:
對WPF的內置支持和一個很棒的設計器
對WCF的內置支持
對WF的內置支持和一個強大的設計器
新的語言特性:LINQ,在VB和C#中可用
Silverlight
增強的JavaScript智能感知和調試器
強大的XHTML/CSS編輯器
不再支持J#
關於VS的更多信息,請參看 http://en.wikipedia.org/wiki/Microsoft_Visual_Studio。
可擴展性簡介
VS固然強大,但不可能面面俱到。很多人都會有自己的特殊需求,VS的很多特性來自 社區的呼聲,另外一些則由第三方組件和開源項目先於VS實現了。
擴展VS的重要性自然無須多說。幸運的是,VS擁有很好的可擴展性,Add-In(插件) 、Macro(宏)和VsPackage是擴展的三種主要方式,它們由來已久。
通過Add-In可以訪問VS IDE的底層API,我們得以將一些編碼或部署任務自動化。通過 Macro可以將VS中的一些重復任務自動化,可以錄制Macro,也可以手工編寫。通過VS SDK 則可以創建VsPackage,可以達到IDE和編程語言之間更深層次的集成。
另外,較之VS 2005,VS 2008提供了新的擴展選項,比如Visualizer和VS Shell。另 一個好消息是在微軟TechEd 2007之後,關於VS擴展性的文檔豐富了許多。值得注意的是 ,可擴展特性不適用於Express版。
IDE概覽
大體上來說,我們日常開發中看到的VS IDE主要包含各種窗口和工具欄,這些窗口有 浮動的、可停靠的、標簽式三種模式,包括打開VS時看到的起始頁。下面來看一下其中的 一些重要窗口。
1)解決方案管理器(Solution Explorer)
在這裡,我們可以查看和管理解決方案內的各個項目、項目所包含的文件,它們以樹 形的結構呈現。它的快捷鍵是Ctrl + W, S。
2)屬性窗口(Property Window)
按下F4(或Ctrl + W, P),可以查看當前選中項的屬性。
3)工具箱(Toolbox)
這個窗口包含了若干控件的列表,可以將其拖拽到Winows窗體、網頁、XAML窗口或WF 的設計器上。它的快捷鍵是Ctrl + W, X。
4)服務器管理器(Server Explorer)
在這個窗口中可以查看和管理本地或遠程的服務器,包括數據庫、服務和其它的一些 服務器資源。 快捷鍵是Ctrl + W, L。
5)類浏覽器(Class View)
這裡顯示了解決方案內的所有可用類型,並將它們按命名空間分組。快捷鍵是Ctrl + W, C。
6)錯誤列表(Error List)
這裡顯示的信息並非全是錯誤(Error),還可以是警告(Warning)或信息(Message )。在編碼或編譯的時候可以查看這些信息。快捷鍵是Ctrl + W, E。
7)輸出窗口(Output Window)
VS中的大多數動作或任務都對應著相應的命令,這些命令會產生輸出信息,如編譯的 時候。快捷鍵是Ctrl + W, O。
8)任務列表(Task List)
這個窗口頗為有趣。可添加兩種任務,一種是注釋,比如“// TODO: Add a property here.”;另一種是用戶自定義任務。這有點類似於常見的TODO List。快捷鍵是Ctrl + W, T。
9)對象浏覽器(Object Browser)
與類浏覽器不同的是,對象浏覽器可以查看所有相關的組件內所包含的類型信息。快 捷鍵是Ctrl + W, J。
好了,關於窗口先說這些,它們都可以在View菜單內找到。快捷鍵都是以Ctrl + W開 頭(屬性窗口建議還是使用F4)。
我們身在何處
本文簡要介紹了VS的歷史及其基本要素,這樣可以建立起對它的感性認識了。同時還 稍微提及了VS的擴展性(也是本系列的主題),主要有三種方式,Macro、Add-In和 VsPackage,它們各有所適用的場景,我打算從Add-In開始。在接下來的幾篇隨筆中,我 將通過一些實例逐步展開對Add-In開發的討論,同時會把代碼放在Google Code上。如果 您在日常開發中對VS擴展性有某些需求,歡迎分享:)
出處:http://anderslly.cnblogs.com