Visual Basic

VB 1

1991年4月，Visual Basic 1.0 for Windows版本發布。1992年9月，Visual Basic 1.0 for DOS版本發布。這個連接程式語言和使用者介面的進步被稱為Tripod（有些時候叫做Ruby），最初的設計是由阿蘭·庫珀（英語：Alan Cooper）完成的。這在當時引起了很大的轟動。許多專家把VB的出現當做是軟體開發史上的一個具有劃時代意義的事件。以現在的眼光來看，VB1.0版的功能其實非常的弱，但它在推出當時可是第一個「可視」的編程軟體。這使得程式設計師欣喜之極，都嘗試在VB的平台上進行軟體創作。

VB 2

1992年11月，VB2.0發布。它對於上一個版本的介面和速度都有所改善。

VB 3

1993年夏天，VB3.0發布，分為標準版和專業版。其中包含一個資料引擎，可以直接讀取Access資料庫。這使得VB的資料庫編程能力大大提高。

VB 4

1995年8月，VB4.0發布了32位元版本和16位元的版本。其中包含了對類別的支援。從VB4開始，逐步引入了物件導向的程式設計思想。VB功能強大，學習簡單。而且，VB還引入了「控制項」的概念，使得大量已經編好的VB程式可以被我們直接拿來使用。
Visual Basic 1.0~4.0都必須將原始碼編譯成VB虛擬碼後解釋執行。

VB 5

1997年2月，VB5.0發布。程式設計師可以用32位元的版本匯入由4.0版本建立的16位元程式，並且能順利編譯。同時還包含了對用戶自建控制項的支援。自從Visual Basic 5.0以後，VB支援編譯成本機程式碼，但必須在VB執行庫的支援下工作。

VB 6

1998年夏天，VB6.0發布。VB6是VB.NET至今仍無法完全取代的版本。

VB.NET （VB7）

2001年，Visual Basic .NET和.NET Framework發布。由於其使用了新的核心和特性，所以很多VB的程式設計師都要覆寫程式。
2002年Visual Basic .NET 2002（v7.0）問世，此後Visual Basic包含在Visual Studio套裝中。
2003年Visual Basic .NET 2003（v7.1）推出。

VB 8

2004年，微軟開放了Visual Studio.NET 2005的測試版本（代號Whidbey）。包含了.NET Framework2.0的測試版本。2005年11月7日Visual Basic 2005（v8.0）發布，同時為初學者與學生提供Visual Basic 2005的免費簡化版本Express Edition。原定免費使用期限一年，之後微軟宣布Express版本永久免費。微軟在其軟體名稱中去掉了.NET部分。Visual Basic 2005的「顯著」優點是，可以直接編寫出Windows XP風格的控制項；但是其編寫的小程式就需要近10MB的記憶體。

VB 9

2008年2月1日Visual Basic 2008（v9.0）發布。
通過幾年的發展，它已成為一種專業化的開發語言和環境。用戶可用Visual Basic快速建立Windows程式，現在還可以編寫企業水平的客戶/伺服器程式及強大的資料庫應用程式。

2015年Visual Basic 2015（VB 14.0）

Visual Basic 2015（VB 14.0）於2015年7月20日發布。

語言特性

VB的中心思想就是要便於程式設計師使用，無論是新手或者專家。VB使用了可以簡單建立應用程式的GUI系統，但是又可以開發相當複雜的程式。VB的程式是一種基於表單的視覺化元件安排的聯合，並且增加程式碼來指定組建的屬性和方法。因為預設的屬性和方法已經有一部分定義在了元件內，所以程式設計師不用寫多少程式碼就可以完成一個簡單的程式。過去的版本裡面VB程式的效能問題一直被放在檯面上討論，但是隨著電腦速度的飛速增加，關於效能的爭論已經越來越少。
表單控制項的增加和改變可以用拖放技術實現。一個排列滿控制項的工具箱用來顯示可用控制項（比如文字方塊或者按鈕）。每個控制項都有自己的屬性和事件。預設的屬性值會在控制項建立的時候提供，但是程式設計師也可以進行更改。很多的屬性值可以在執行時候隨著用戶的動作和修改進行改動，這樣就形成了一個動態的程式。舉個例子來說：表單的大小改變事件中加入了可以改變控制項位置的程式碼，在執行時候每當用戶更改視窗大小，控制項也會隨之改變位置。在文字方塊中的文字改變事件中加入相應的程式碼，程式就能夠在文字輸入的時候自動翻譯或者阻止某些字元的輸入。
VB的程式可以包含一個或多個表單，或者是一個主表單和多個子表單，類別似於作業系統的樣子。有很少功能的對話方塊視窗（比如沒有最大化和最小化按鈕的表單）可以用來提供彈出功能。
VB的元件既可以擁有使用者介面，也可以沒有。這樣一來伺服器端程式就可以處理增加的模組。
VB使用參照計數的方法來進行垃圾收集，這個方法中包含有大量的物件，提供基本的物件導向支援。因為越來越多組建的出現，程式設計師可以選用自己需要的擴充庫。和有些語言不一樣，VB對大小寫不敏感，但是能自動轉換關鍵詞到標準的大小寫狀態，以及強制使得符號表入口的實體的變數名稱遵循書寫規則。預設情況下字串的比較是對大小寫敏感的，但是可以關閉這個功能。
VB使得大量的外界控制項有了自己的生存空間。大量的第三方控制項針對VB提供。VB也提供了建立、使用和重用這些控制項的方法，但是由於語言問題，從一個應用程式建立另外一個並不簡單。

缺點

這樣大的變革一度被認為是微軟為了延長VB的生命力而做出的，結果把VB改得幾乎面目全非，成了一個類別似於C#的新語言。VB6的程式幾乎無法執行在VB.NET中，儘管微軟針對該問題提供了「更新精靈」，也無法執行徹底的轉換。這樣，程式設計師不得不付出相當大的精力，手工轉換程式碼。
2005年，微軟宣布將不會再對非.NET版本的VB進行支援。VB社群立即作出反應表示關心這個訊息，一些老用戶還遞交了希望能夠繼續對VB進行技術支援的請願書。微軟目前還不願意改變他們的決定。

支持者

但是很多VB的支持者解釋說VB的易用性就是它最大的優勢，可以讓經驗豐富的VB程式設計師或是剛剛懂得皮毛的人都能用自己的方式快速開發程式。而且VB的程式可以非常簡單的和資料庫連接。比如利用控制項可以繫結資料庫，這樣一來用VB寫出的程式就可以掌握資料庫的所有資訊而不用寫一行程式碼。
很多語言的特性比如GoSub、On Error和用變數名字的最後一個字元判斷宣告類別型（比如字串型str$）都是從BASIC中來的。VB的語法和絕大部分語言都不同，可能會讓新的程式設計師混淆。比如宣告「Dim a, b, c As Integer」宣告了c為整數變數，但是a,b依然是Variant（.NET中為Object）類別型的。（如果想宣告3個Integer，必須寫Dim a As Integer, b As Integer, c as Integer；而直接寫Dim a，後面不寫類別型，則自動變成Variant類別型——占用大量資源。這個問題在VB.NET以後的版本已經解決，Dim a, b, c As Integer的類別型都將為整數）
還有一些特性，比如底線字元「_」支援一行程式碼分多行寫。一些程式設計師在使用的時候由於不符規範而引起錯誤。

總結

VB會吸引更多的讚譽和批評，也會繼續為廣大的用戶和程式設計師使用。它比較適合用來開發提供友好介面的程式（比如針對伺服器的資料），但是不適合開發需要進行繁重運算的程式（如聯合計算程式）。
VB對初學程式設計者是一個很好的入門軟體，尤其對一些有程式設計才能而自己也不知道的人，由VB著手可輕易引發他們的潛能，發揮他們在這方面的才華。