Visual Basic瞭解

Visual Basic是一種由微軟公司開發的結構化的、模塊化的、面向對象的、包含協助開發環境的事件驅動爲機制的可視化程序設計語言。這是一種可用於微軟自家產品開發的語言。它源自於Basic編程語言。VB擁有圖形用戶界面(GUI)和快速應用程序開發(RAD)系統,能夠輕易的使用DAO、RDO、ADO鏈接數據庫,或者輕鬆的建立Active X控件。程序員能夠輕鬆的使用VB提供的組件快速創建一個應用程序。程序員

中文名:VB編程語言   sql

類別:計算機程序設計語言數據庫

外文名:Visual Basic編程

創始人:Alan Cooper數組

發展歷程

編輯
VB 6.0 啓動畫面 VB 6.0 啓動畫面
1991年,微軟公司推出了 Visual Basic 1.0。當時引發了很大的轟動。這個鏈接編程語言和用戶界面的進步被稱爲Tripod(有些時候叫作 Ruby),最初的設計是由 阿蘭·庫珀(Alan Cooper)完成的。
許多專家把 VB 的出現當作是軟件開發史上的一個具備劃時代意義的事件。在當時,它是第一個「可視」的編程軟件。這使得程序員欣喜之極,都嘗試在VB的平臺上進行軟件創做。
微軟也不失時機地在四年內接連推出 2.0、3.0、4.0 三個版本。而且從 VB 3.0 開始,微軟將Access的數據庫驅動集成到了 VB 中,這使得 VB 的數據庫編程能力大大提升。從 VB 4.0 開始,VB 也引入了 面向對象的程序設計思想。VB 功能強大,學習簡單。並且,VB 還引入了「 控件」的概念,使得大量已經編好的 VB 程序能夠被咱們直接拿來使用。
Visual Basic 各版本界面
Visual Basic 各版本界面 (6張)
2002年開始,微軟將 .NET Framework與 Visual Basic 結合而成爲 Visual Basic .NET (vb .net),從新打造 VB,新增許多特性及語法,又將 VB 推向一個新的高度。最新版本 Visual Basic 2012 也將帶來許多使人期待的新功能。
經過幾年的發展,它已成爲一種專業化的開發語言和環境。用戶可用Visual Basic 快速建立 Windows程序,並可編寫企業水平的客戶端/ 服務器程序及強大的數據庫應用程序。
Visual Basic 發展簡史
發佈日期
名稱
說明
.NET Framework 引入以前
1991-04
Visual Basic 1.0 Windows 版本
 
1992-09
Visual Basic 1.0 DOS 版本
 
1992-11
Visual Basic 2.0
對於上一個版本的界面和速度都有所改善。
1993-06
Visual Basic 3.0
包含一個數據引擎,能夠直接讀取 Access 數據庫。
1995-08
Visual Basic 4.0
發佈了32位和16位的版本。其中包含了對類的支持。
1997-02
Visual Basic 5.0
包含了對用戶自建控件的支持,且從這個版本開始 VB 能夠支持中文。
1998-10
Visual Basic 6.0
 
.NET Framework 引入以後
2002-02
Visual Basic .NET 2002 (7.0)
因爲其使用了新的核心和特性,因此不少 VB 的程序員都要改寫程序。
2003-04
Visual Basic .NET 2003 (7.1)
主要改進了運行情況,提高了 IDE 以及運行時穩定性。
2005-11
Visual Basic 2005 (8.0)
是 vb .net 的重大轉變,微軟決意在其名稱中去掉了".NET"部份。VB2005 提供 My 僞命名空間、泛型、操做符重載等新語言特性。
2007-11
Visual Basic 2008 (9.0)
提供支持 IIF 函數、匿名類、LINQ、Lambda 表達式、XML 數據結構等新語言特性。
2008-03
微軟宣佈結束對於 VB 6.0 的延長支持。
2010-04
Visual Studio 2010 (10.0)
提供支持 Dynamic Language Runtime (DLR)、自動實現屬性、集合初始化、不須要在代碼斷行書寫時輸入下劃線「_」等新語言特性。
2012-05
Visual Studio 2012 (11.0) RC
提供支持更簡易的異步編程(Asynchronous Programming)、Iterator、擴充 Global 關鍵詞等新語言特性。
2013-11-13-2
Visual Studio 2013
 
2014-11-13 Visual Studio 2015
  
Windows、iOS 以及 Android 應用開發[1]  
Visual Basic 1.0
1991——西雅圖夜空的雷電
隨着 Windows 3.0的推出,愈來愈多的開發商對這個圖形界面的操做系統產生了興趣,大量的 Windows應用程序開始涌現。可是,Windows程序的開發相對於傳統的 DOS有很大的不一樣,開發者必須將不少精力放在開發GUI上,這讓不少但願學習Windows開發的人員怯步。1991年,微軟公司展現了一個叫Thunder的產品,全部的開發者都驚呆了,它居然能夠用鼠標「畫」出所需的用戶界面,而後用簡單的 BASIC語言編寫業務邏輯,就生成一個完整的應用程序。這種全新的「Visual」的開發就像雷電(Thunder)同樣,給Windows開發人員開闢了新的天地。這個產品最終被定名爲Visual Basic,採用 事件驅動,Quick BASIC的語法和可視化的IDE。Visual Basic 1.0帶來的最新的開發體驗就是事件驅動,它不一樣於傳統的過程式開發。同時,VBX 控件讓可視化組件的概念進入Visual Basic。Visual Basic 1.0 是革命性的 BASIC,它的誕生也是 VB 史上的一段佳話。
Visual Basic 2.0
1992——漸入佳境
因爲Windows 3.1的推出,Windows已經充分得到了用戶的承認,Windows開發也進入一個新的時代。Visual Basic 1.0的功能過於簡單,相對於Windows 3.1的強大功能沒有發揮出來。因此,微軟在1992年推出了新版本Visual Basic 2.0。這個版本最大的改進就是加入了對象型變量,好比下面的兩行代碼:
1
2
Dim  Command1  As  CommandButton
Dim  As  Control
不光如此,並且有了最原始的「繼承」概念,對象型變量分爲通常類型(Control和Form)和專有類型(CommandButton和Form1等)。通常類型的變量能夠引用專有類型的實例,甚至經過後期綁定訪問專有類型的屬性和方法;還能夠經過TypeOf…Is運算符獲取對象實例的運行時類型信息(這個功能就是當今C#的is運算符或Java的instanceof運算符)。除了對語言的改進和擴充,Visual Basic 2.0對VBX有了很好的支持,許多第三方控件涌現出來,極大地豐富了Visual Basic的功能。微軟還爲Visual Basic 2.0增長了OLE和簡單的數據訪問功能。
Visual Basic 3.0
1993——數據庫組件新添力量
Visual Basic 2.0推出沒幾個月, 微軟就發佈了新版本的Visual Basic 3.0,能夠看出VB這時候旺盛的生命力。乍一看,Visual Basic 3.0的界面沒有太大的變化,但其實這個版本是很是及時的。它增長了最新的ODBC2.0的支持,Jet數據引擎的支持和新版本OLE的支持。最吸引人的地方是它對數據庫的支持大大加強了,Grid 控件和數據控件可以建立出色的數據窗口應用程序,而Jet引擎讓Visual Basic能對最新的Access數據庫快速地訪問。Visual Basic 3.0還增長了許多新的金融函數。此外還增長了至關多的專業級控件,能夠開發出至關水平的Windows應用程序。Visual Basic 3.0是98年之前中國最流行的Visual Basic版本,由於它開發出來的 可執行文件很是小,一般能用一張軟盤裝下。不過,Visual Basic採用 虛擬機運行P代碼的作法也讓不少開發者不滿,他們認爲這樣程序運行的效率很低,這時候Visual Basic的競爭者 Delphi也誕生了。
Visual Basic 4.0
1995——第二次革命性變化,向COM進軍
從1993年到1995年2年中,Visual Basic一直沒有新的動靜,焦急的開發者都想一窺這個神祕的新版本到底發生了什麼變化。Visual Basic 4.0的BETA最後終於和你們見面了。這個版本包含了16位和32位兩個版本,16位的版本就像是Visual Basic 3.0的升級版,而32位版則是一場新的革命。首先,人們發現VBX 控件不見了,所有換成了OCX控件,這個OCX多是指OLE Custom Controls,這個OLE已經不是傳統的OLE了,就是COM控件。第二個最大變化是Visual Basic 4.0所用的語言換成了Visual Basic For Application,這就和Office 95所採用的宏語言統一塊兒來,這個新語言有不少亮點:
一、 加入了「 類模塊」。這是面向對象最重要的封裝性的基礎。
二、 加入了屬性過程,加上函數過程,子程序過程,VB 已經有組件開發所需的封裝性特徵。
三、 加入了 ByteBoolean 和  Object 類型。這大大完善了 VB 的類型系統。
四、 For Each 語句和 Collection 對象。For Each 語句給遍歷集合類型提供了極大的方便,在動態增加的 Collection 上使用 For Each,而不用擔憂集合內容的總數或煩人的下標問題。
這個版本的Visual Basic還可以開發DLL工程,其實就是COM的DLL,能夠將書寫好的類用這種方式和其餘語言共享。
總之,這個4.0的版本爲 Visual Basic 成爲一種 COM 語言奠基了基礎。用 Visual Basic 4.0 開發基於 COM 的 DLL 比任何一種開發工具都方便。可是,Visual Basic 4.0 的性能問題變得更加嚴重了,P-代碼的組件成爲 Visual Basic 4.0 嚴重的性能瓶頸,並且巨大的 運行庫也讓用戶感到不滿。Visual Basic 4.0 對之前版本的支持也很差,使用了大量 VBX 的項目很難移植到 Visual Basic 4.0 中。所以,Visual Basic 4.0 在中國的普及程度很是低。
Visual Basic 5.0
1997——Visual Basic的豐收年
1997年,微軟推出了Visual Basic 5.0,這個版本的重要性幾乎和4.0同樣高。COM(這時候叫ActiveX)已經至關成熟,Visual Basic 5.0固然對它提供了最強的支持。不過,國內尚未意識到COM的重要性前主要對這個版本另外一個最大的亮點十分關注: 本地代碼 編譯器。Visual Basic 5.0終於在用戶的呼聲中加入了一個本地代碼編譯器,它可讓應用程序的效率大大提高。除了這個你們都知道的改進之外,Visual Basic 5.0對Visual Basic For Application語言有重大的完善和豐富:
一、 事件。Visual Basic 5.0終於容許用戶本身建立事件,並且這事件的語法至關強健和完善,這在一種不支持函數回調的語言中是很可貴的。VB擁有屬性、方法和事件的完整封裝性。
二、 接口。這是VB實現多態性的基礎。同時爲編寫COM組件提供了更多方便。
三、 枚舉。在 Visual Basic 5.0 中枚舉做爲Long 整型的子類型出現,用枚舉能夠對 常量進行完善的封裝。
四、 類模塊的改進。經過類模塊的屬性能夠指定類模塊具備多種指定的行爲,如私有 構造函數等,能夠經過這個功能建立符合 Singleton 和 Monostate 模式的設計。
五、 Debug.Assert。雖然這個斷言系統有點雞肋,可是總算是給調試帶來了方便。
六、 Visual Basic 5.0 支持建立本身的集合類。能夠建立用於For Each語句的集合類型。
七、新的數據類型Decimal,能夠精確地處理有效數位較多的計算。
Visual Basic 5.0 的 IDE 支持「智能感知」,這是一項很是方便開發者的功能,能夠沒必要記住很長的成員名稱和關鍵字,只要按「.」,想要的東西通通彈出來。
Visual Basic 5.0 還支持開發本身的 ActiveX 控件、進程內的 COM DLL 組件、進程外的 COM EXE 組件以及在瀏覽器中運行的 ActiveX 文檔。這極大豐富了 Visual Basic 的開發能力,在 Internet 開發上,Visual Basic 5.0 也能有所建樹。
Visual Basic 6.0
Visual Basic 6.0 主界面 Visual Basic 6.0 主界面
1998——企業真正高效的源泉
Visual Basic 6.0做爲Visual Studio 6.0的一員發佈,證實微軟正在改變Visual Basic的產品定位,他想讓Visual Basic成爲企業級快速開發的利器。Visual Basic 6.0在數據訪問方面有了很大的改進,新的ADO組件讓對大量數據快速訪問成爲可能。數據環境和新的報表功能也讓數據開發有了全新的體驗。Visual Basic 藉助COM/COM+強大的功能,能夠開發具備N層結構的 分佈式應用程序。同時,Visual Basic還能夠在IIS上開發性能超羣的Web應用程序。Visual Basic 6.0在語言方面和IDE方面的改進都不大,可是許多新增的組件成爲Visual Basic開發人員手中的利器,如File System Object等。新的 字符串函數Split和Replace等也給Visual Basic的程序員帶來很大方便。
總之 Visual Basic 6.0 已是很是成熟穩定的開發系統,能讓企業快速創建多層的系統以及 Web 應用程序,成爲當前 Windows 上最流行的 Visual Basic 版本。(目前全國計算機二級考試所用的VB版本也是Visual Basic 6.0)
Visual Basic 6.0安裝教程
一、準備工做: 下載軟件
二、安裝Visual Basic 6.0的步驟
① 把下載的壓縮包解壓出來。
② 在解壓出來的文件夾中雙擊文件「SETUP.EXE」執行安裝程序。出現VB的安裝嚮導。
③ 直接點擊「下一步」,選中「接受協議」,再點擊「下一步」。
④ 在產品的ID號中所有輸入「1」(用一串「1」把兩個空格都填寫滿),姓名和公司名稱任意填,再點擊「下一步」。
⑤ 選中「安裝Visual Basic 6.0中文企業版」,再點擊「下一步」。
⑥ 通常狀況下直接點擊「下一步」(公用文件的文件夾能夠不須要改變), 稍等...,直接點擊「繼續」,直接點擊「肯定」,直接點擊「是」。
⑦ 選擇「典型安裝」或「自定義安裝」,初學者能夠選前者。在彈出對話框中直接點擊「是」。
⑧ 在彈出的對話框中,點擊「從新啓動Windows」。
繼續下一步安裝
三、安裝MSDN(幫助文件)
MSDN安裝包並不包含在VB企業版中,須要另外下載!
① 重裝啓動計算機後,在出現的VB安裝界面中能夠直接安裝幫助文件,選中「安裝 MSDN」項,再點擊「下一步」。
② 在彈出的對話框中按「瀏覽」,找到「MSDN for VB 6.0」文件夾。
③ 按「繼續」按鈕,再按「肯定」, 選中「接受協議」。
④ 按「自定義安裝」,在「VB6.0幫助文件」前打鉤,再點擊「繼續」。
⑤ 完成MSDN的安裝,點擊「肯定」。
⑥ 直接點擊「下一步」,把「如今註冊」項去掉,再點擊「完成」,即完成了VB的安裝
Visual Basic 6.0中文企業版 Visual Basic 6.0中文企業版
2002——第三次革命性變化,向.NET進軍
從1998年發佈到2002年正式推出 Visual Basic .NET 簡直吊足了開發者的胃口。從2000年就開始傳言的具備繼承、Try…Catch 語句等新功能的全新 VB 7.0 一直沒有露面。直到2001年,Visual Studio .NET 的第一個 Beta 版問世的時候,全部人都呆了——這是 Visual Basic 嗎?And 語句變成了 BitAnd, 數組只能從0下標開始,並且連 Dim 語句的意義都變了,幾乎全部的窗體控件都變了,Long 變成了 Integer 而 Integer 變成了 Short,Variant 不見了,Static 不能用了……簡直是翻天覆地,人們已經無暇關注這個版本有什麼改進,轉而擔憂我怎麼才能接受這個版本了。其實 Visual Basic .NET 徹底是爲了 . NET Framework這一全新的平臺而設計的,Visual Basic .NET 的設計者一開始沒有掌握好新平臺和舊語言的平衡。到了 Beta 2 中,不少東西迴歸了6.0,如 BitAnd 又變回了 And, 數組的定義語句也變回了原有的意義,Static 也回到了 Visual Basic 中。可是 Beta 1 驚人的變化讓全部的 VB 開發者怕了,他們以爲這種語言被改的千瘡百孔,有些人乾脆轉去研究傳說中的新語言C#。可是Visual Basic .NET 渡過幾個 Beta 版本以後仍是找到了正確的定位。Visual Basic .NET 有對 CLR 最完善的支持,同時儘可能保留着 BASIC 易懂的語法風格和易用性。Visual Basic.NET常常被微軟高管用來比擬上世紀80年代的視窗系統。這個版本新增長的功能已經數不清,最重要的幾個是:
一、 繼承。至此,Visual Basic 完成了向 面向對象轉變的道路。
二、 共享成員。
三、 Try…Catch 結構化異常處理
四、 Delegate 和 Interface。
五、 名稱空間
六、 對自由 線程的支持。
特別的是, Visual Basic .NET大大減小了 Visual Basic 語言的關鍵字,如 GoSub、PSet 等等。原先的 Visual Basic 有多達120個關鍵字,這給寫程序帶來了很大的不便,如今通過精簡,Visual Basic 脫下了這個沉重的包袱。
Visual Basic .NET如今是一門現代的、強壯的、 面向對象的、簡單的可視化開發語言。強大的語言功能吸引了不少開發者。歷史是在不斷重演的,Visual Basic .NET 現在的處境和 Visual Basic 4.0 很類似,因爲兼容性變差,人氣也下降了。同時因爲依附於 .NET Framework,程序發佈形成了必定的困難。如今國內使用 Visual Basic .NET 的人相對於 Visual Basic 6.0 來說顯得不多。可是憑藉  Visual Basic .NET 強大的語言功能和MS的支持,Visual Basic .NET 必定會顯出它的光輝來。
Visual Basic .NET 2003
2003——穩中求變的新版本
Visual Basic .NET2003 是一個至關穩重的版本,改變不多,但對小處有不少改進。首先 Visual Basic 6.0 升級嚮導作了很大改進,這給從老版本痛苦升級的人帶來了更多一些的但願。其次在 IDE 方面,Visual Basic .NET 2003 修正了許多錯誤,還讓事件處理恢復了6.0的開發體驗。語言方面只有兩項改進:
一、在 For、For Each 語句中聲明循環變量。
二、增長了數學移位運算符 "<<" 和 ">>"。
在這個比較成熟穩定的新版本下,許多 Visual Basic 的愛好者開始從新瞭解 Visual Basic .NET,社區裏面也漸漸熱鬧起來。可是,有些使用 C# 的開發者堅持認爲 Visual Basic .NET 是垃圾,儘管當時的 Visual Basic .NET 擁有比 C# 更多的功能和更好的 IDE (Integrated Development, 集成開發環境)。這說明程序員們不瞭解 Visual Basic .NET 成爲它普及的最大障礙。
Visual Basic 2005
2005——完美主義的Visual Basic
爲了讓 Visual Basic 有最佳的開發體驗,Visual Basic 2005 的設計者絞盡了腦汁。此次 Visual Basic 2005 光語言上的改進就足以讓 Visual Basic 的開發人員高興一陣子。
Visual Basic 2005 具備下列新增和增強的功能:
一、 泛型
二、 運算符重載
三、Partial Class。
四、 窗體的默認實例。
五、My 僞命名空間。
六、其餘語法的多種改進。
如今用 Visual Basic 2005 只要一行代碼就能夠讀寫註冊表、訪問文件、讀寫串口、獲取應用程序信息…… 用 Visual Basic 2005 徹底能夠稱做享受開發。而泛型、運算符重載等功能又可讓 Visual Basic 的開發人員深刻 .NET Framework的所有功能,開發出最優秀的應用程序。
Visual Basic 2008
2008——功能極強又簡單易用
Visual Basic 2008 具備下列新增和增強的功能:
一、Language-integrated query (LINQ)。
二、物件關聯式設計工具會協助開發人員創建和編輯,使應用程序鏈接至資料庫的 link to sql 類別。
三、Lambda 表達式
四、XML 數據結構。
Visual Basic 2010
2010——下一代開發平臺
Visual Basic 2010 具備下列新增和增強的功能:
一、 數組初始值設定項。
二、集合初始值設定項。
三、內聯 Lambda 表達式。
四、自動實現屬性。
五、泛化。
六、No-PIA 部署。
七、與 Python 的集成。
八、並行計算擴展。
Visual Basic 2012(RC)
Visual Basic 2012 RC 具備下列新增和增強的功能 :
一、異步功能
二、 迭代器
三、調用層次結構
四、調用方信息
五、全局命名空間語句中的關鍵字
Visual Basic 2013
主要新功能
1支持 Windows 8.1 App 開發
2敏捷項目管理(Agile Portfolio Management)
3版本控制
4輕量代碼註釋(lightweight code commenting)
5整合微軟System Center IT管理平臺
6訂價與許可

語言特點

編輯
 
製做應用程序安裝盤等提供了友好的集成開發環境。
可視化的設計平臺:在使用傳統的程序設計語言編程時,通常須要經過編寫程序來設計應用程序的界面(如界面的外觀和位置等),在設計過程當中看不見界面的實際效果。而在Visual Basic 6.0中,採用面向對象程序設計方法(Object-Oriented Programming),把程序和數據封裝起來做爲一個對象,每一個對象都是可視的。開發人員在界面設計時,能夠直接用Visual Basic 6.0的工具箱在屏幕上"畫"出窗口、菜單、命令按鍵等不一樣類型的對象,併爲每一個對象設置屬性。開發人員要作的僅僅是對要完成事件過程的對象進行編寫代碼,於是程序設計的效率可大大提升。
事件驅動的編程機制:面向過程的程序是由一個主程序和若干個子程序及函數組成的。程序運行時老是先從主程序開始,由主程序調用子程序和函數,開發人員在編程時必須事先肯定整個程序的執行順序。而Visual Basic 6.0事件驅動的編程是針對用戶觸發某個對象的相關事件進行編碼,每一個事件均可以驅動一段程序的運行。開發人員只要編寫響應用戶動做的代碼。這樣的應用程序代碼精簡,比較容易編寫與維護。
結構化的程序設計語言:Visual Basic 6.0具備豐富的數據類型和衆多的內部函數。其採用模塊化和結構化程序設計語言,結構清晰,語法簡單,容易學習。
強大的數據庫功能:Visual Basic 6.0利用數據控件能夠訪問Access、FoxPro等多種數據庫系統,也能夠訪問Excel、Lotus等多種電子表格。
ActiveX技術:ActiveX發展了原有的OLE技術,使開發人員擺脫了特定語言的束縛,方便地使用其餘應用程序提供的功能,使Visual Basic 6.0可以開發集聲音、圖像、動畫、字處理、電子表格、Web等對象於一體的應用程序。
網絡功能:Visual Basic 6.0提供的DHTML(動態HTML)設計工具可使開發者動態地建立和編輯Web頁面,使用戶能開發出多功能的網絡應用軟件。[2]  
語言基礎:
註釋方式:(在VB中,註釋有兩種方式)
1.以Rem關鍵字開頭,而且Rem關鍵字與註釋內容之間要加一個空格。註釋能夠是單獨的一行,也能夠寫在其餘語句行的後面。若是再其餘語句行後使用Rem關鍵字,則必須使用冒號(:)與語句隔開
2.也可使用一個撇號(‘)來代替Rem關鍵字。若使用撇號,則在其餘語句行使用時沒必要加冒號。
如:Msgbox「答案是」& a+b,vbinformation,"A+B problem" '彈出a+b的結果
特徵衡量 在Visual Basic中,可經過屬性、方法和事件來講明和衡量一個對象的特徵。
事件(Event) 事件是指發生在某一對象上的事情。事件又可分爲鼠標事件和鍵盤事件。例如:在命令按鈕(Command Button)這一對象上可能發生鼠標事件(Click)、鼠標移動(Mouse Move)、鼠標按下(Mouse Down)等鼠標事件,也可能發生鍵盤按下(Key Down)等鍵盤事件。總之,事件指明瞭對象「什麼狀況下作?」,經常使用於定義對象發生某種反映的時機和條件。
方法(Method) 方法是用來控制對象的功能操做的內部程序。例如,人具備說話、行走、學習、睡覺等功能,在Visual Basic中,對象所能提供的這些功能和操做,就稱做「方法」。以窗體爲例,它具備顯示(show)或隱藏(hide)的方法。總之,方法指明瞭對象「能作什麼?」,經常使用於定義對象的功能和操做。
屬性(Property) 屬性是指用於描述對象的名稱、位置、顏色、字體等特徵的一些指標。能夠經過屬性改變對象的特性。
       有些屬性能夠在設計時經過屬性窗口來設置,不用編寫任何代碼;而有些屬性則必須經過編寫代碼,在運行程序的同時進行設置。能夠在運行時讀取和設置取值的屬性成爲讀寫屬性,只能讀取的屬性成爲只讀屬性。總之屬性指明瞭對象「是什麼樣子?」,經常使用於定義對象的外觀。
對象與類
對象 (Object) Visual Basic.NET具備「面向對象」的特性,Visual Basic .NET應用程序的基本單元是對象,用Visual Basic .NET編程就是用「對象」組裝程序。這種「面向對象」的編程方法與傳統的所有用代碼編制程序的方法有很大區別,就像用集成電路芯片組裝電視機和用三極管,二極管組裝電視機的區別同樣。顯然,「面向對象」的編程方法比傳統的編程方法更簡單,更方便,而且編寫出的程序也更加穩定。所以,「對象」能夠被看作Visual Basic .NET 程序設計的核心。
在 Visual Basic.NET程序設計中,對象中還能夠包含頭,手,腿,腳等部位,其中的每一個部位又能夠單獨做爲做爲被研究的對象。在 Visual Basic.NET程序設計中,整個應用程序就是一個對象,應用程序中又包含着 窗體(Form), 命令按鈕(Command),菜單(Menu)等對象。
類(Class)
在 Visual Basic.NET中,對象是由類建立的,所以對象能夠說是類的具體實例,這就比如是蛋糕和作蛋糕的模具之間的關係。
各類不一樣的對象分屬於各類不一樣的種類。同一類對象可能具備一些不一樣的特徵(或是說同一類對象不必定具備徹底相同的特性);具備某些相同的特性的對象,不必定是同一類對象,這就比如是人和猴子雖然都有身高、性別等特徵,但兩者之間還存在着智商、語言等特性差別,這兩個對象之間的特性相差不少,根本就不能算是同一類對象。而男人和女人,雖然有着性別、生理等方面的差別,但他們絕大部分特性相同,能夠算是同一種類。由此,能夠歸結爲一句話:同一類對象的絕大部分特性相同。

相關控件

窗體項目。因此Visual Basic中的控件大多和窗體項目有關。
分類
根據應用類型,Visual Basic控件能夠分爲以下3類:
內置控件
內置控件即Visual Basic工具箱中的控件,裏面包含了常見窗體程序所須要的控件
ActiveX控件
ActiveX控件包含不一樣版本Visual Basic提供的控件和僅在專業版、企業版中提供的控件,而且還包含第三方提供的控件。
ActiveX控件是對Visual Basic內置控件的擴充,開發人員能夠根據我的須要進行隨意擴充,擴充的ActiveX控件將在工具箱中顯示。
在工具箱中添加ActiveX控件的流程以下。
(1)打開一個Visual Basic 6.0項目,一次選擇【工程】->【部件】命令,在彈出的「部件」對話框中選擇「控件」選項卡,在列表框中選擇要添加的ActiveX控件
(2)返回Visual Basic主界面,此時添加的ActiveX控件已被添加到工具箱內
可插入對象
在Visual Basic的工具欄中,能夠放置其餘的第三方對象,能夠像使用控件同樣輕鬆使用。添加後的對象也在工具箱中顯示,添加對象的方法和添加ActiveX控件相似,只要依次選擇【工程】->【部件】命令,在彈出的「部件」對話框中選擇「可插入對象」選項卡,再選擇添加的對象便可。
有關第三方對象,能夠從受信任的來源下載 控件,並經過添加引用來導入。支持這些自定義的Vb的控件有: ComponentOne Studio,Spread, ActiveReportsMultiRow等。

語言特色

編輯

基本特色

VB 的中心思想就是要便於程序員使用,不管是新手或者專家。VB使用了能夠簡單創建應用程序的GUI 系統,可是又能夠開發至關複雜的程序。VB 的程序是一種基於 窗體的可視化組件安排的聯合,而且增長代碼來指定組件的屬性和方法。由於默認的屬性和方法已經有一部分定義在了組件內,因此程序員不用寫多少代碼就能夠完成一個簡單的程序。過去的版本里面 VB 程序的性能問題一直被放在了桌面上,可是隨着計算機速度的飛速增長,關於性能的爭論已經愈來愈少。
窗體控件的增長和改變能夠用拖放技術實現。一個排列滿 控件的工具箱用來顯示可用控件(好比文本框或者按鈕)。每一個控件都有本身的屬性和事件。默認的屬性值會在控件建立的時候提供,可是程序員也能夠進行更改。不少的屬性值能夠在運行時候隨着用戶的動做和修改進行改動,這樣就造成了一個動態的程序。舉個例子來講: 窗體的大小改變事件中加入了能夠改變控件位置的代碼,在運行時候每當用戶更改窗口大小,控件也會隨之改變位置。在文本框中的文字改變事件中加入相應的代碼,程序就可以在文字輸入的時候自動翻譯或者阻止某些字符的輸入。
VB 的程序能夠包含一個或多個窗體,或者是一個主窗體和多個子窗體,相似於操做系統的樣子。有不多功能的對話框窗口(好比沒有最大化和最小化按鈕的窗體)能夠用來提供彈出功能。
VB 的組件既能夠擁有用戶界面,也能夠沒有。這樣一來 服務器端程序就能夠處理增長的模塊。
VB 使用參數計算的方法來進行垃圾收集,這個方法中包含有大量的對象,提供基本的 面向對象支持。由於愈來愈多組件的出現,程序員能夠選用本身須要的擴展庫。和有些語言不同,VB 對大小寫不敏感,可是能自動轉換關鍵詞到標準的大小寫狀態,以及強制使得符號表入口的實體的變量名稱遵循書寫規則。默認狀況下 字符串的比較是對大小寫敏感的,可是能夠關閉這個功能。
VB 使得大量的外界 控件有了本身的生存空間。大量的 第三方控件針對 VB 提供。VB 也提供了創建、使用和重用這些控件的方法,可是因爲語言問題,從一個應用程序建立另一個並不簡單。

語言缺點

Visual Basic 語言具備不支持繼承、無原生支持多線程、 異常處理不完善等三項明顯缺點,使其有所侷限性(此些缺點皆已在 vb .net 得到改進)。
不支持繼承
VB 5.0 和 VB 6.0 都是基於對象的編程語言,可是不包含繼承特性。VB 中提供了特殊的類的功能,可是仍是不能知足程序員的需求。
無原生支持多線程
Visual Basic 對於多線程無原生支持,只能經過 Windows API的調用實現,且極其的不穩定。由於在API建立的線程中,並無自動初始化運行時庫,致使部分的函數沒法使用。通常的,在VB6等早期的VB開發環境下,使用API建立線程的目的是完成容易使程序假死的大量數據或者邏輯的計算。
異常處理不完善
Visual Basic 中內置異常處理,即便未寫異常處理代碼,一旦用戶出錯也會彈出一個明確寫出出錯緣由對話框,接着程序終止。
Visual Basic 中可使用 Err.Raise 拋出異常。對系統及用戶拋出的異常的處理經常使用兩種模式:一是使用 On Error Resume Next 處理錯誤;另外一種是使用 On Error Goto 將運行引入錯誤處理代碼。但相對 C++ 等語言而言,這樣的 異常處理破壞了代碼的結構。

派生語言

編輯
微軟開發了一系列由 Visual Basic 所派生的語言:

VBA

Visual Basic for Applications(VBA):包含在微軟的應用程序中(如 Microsoft Office),以及相似WordPerfect、Office這樣第三方的產品裏面。VBA 這樣嵌入在各類應用程序中看起來有些矛盾,可是它的功能和 VB 同樣強大。

VBS

VBScript(VBS):是默認的 ASP語言,還能夠用在 Windows 腳本編寫網頁編碼中。儘管它的語法相似於VB,可是它倒是一種徹底不一樣的語言。VBS 不使用 VB 運行庫運行,而是由Windows腳本主機 解釋執行。這兩種語言之中的不一樣點影響ASP網站的表現。

vb.net

Visual Basic .NET(vb .net):當微軟準備開發一種新的編程工具的時候,第一決定就是利用 VB 6.0 來進行舊改,或者就是從新組建工程開發新工具。微軟後來開發了 VB 的繼任者Visual Basic .NET,同時也是 .NET平臺的一部分。vb .net編程語言是一種真正的 面向對象編程語言,和 VB 並不徹底兼容。
Visual Basic .NET(vb .net) 是新一代的 VB 語言,並不僅是 VB 6.0 的簡單升級,vb .net 與 VB (泛指 VB 6.0 以前的版本) 之間有很是大的區別。其新特性主要表如今如下幾方面:
1.vb .net 徹底集成到 Visual Studio 集成開發環境中,在這種集成開發環境與 VB 在若干方面有差別。主要體如今 窗體的佈局以及菜單等方面都有所不一樣。
2.vb .net 項目與 VB 不一樣。它使用基於文件夾的模型,全部項目均放置在項目文件夾 層次結構中。
3.vb .net 中使用ado .net來訪問數據庫,ado .net是 .NET Framework的一部分。在 vb .net 中實現數據訪問的方法主要有兩種:其一是在程序設計階段,經過建立、配置數據適配器 DataAdapter 和生成數據集 DataSet;其二是在運行中,經過編程方式動態建立配置數據適配器和建立、生成數據集。
4.在 vb .net 中是使用asp .net技術來編寫 Web 頁面的。在asp .net中使用的也不是 腳本語言,而是真正意義的編程語言。憑藉asp .net的 Web 應用程序、XML Web Services 等基於 Web 的功能,使得 vb .net 開發 Web 頁面與開發 Windows 應用程序很類似,Web 頁面代碼也顯得有條有理了。
5.vb .net 已經成爲徹底的面向對象的編程語言,而且新增更多語言特性。
Visual Basic .NET有提供轉換精靈,協助開發者將 VB 6.0 的程序代碼轉換爲 vb .net 相對應之程序代碼。

語言爭議

編輯
程序員中,對於各類語言孰優孰劣的爭論並很多見,Visual Basic 更是成爲了一種充滿了爭議的語言。

反方觀點

一些批評家認爲 Visual Basic 是一種給兒童和菜鳥程序員的語言,它自從設計開始就是一種簡單的語言。一些 C++和Java中的特性在 VB 中並無出現。在感覺開發的方便和快速的同時,一些相似於編譯時進行類型和聲明檢查的功能在默認狀況下是關閉的。這樣一些程序員一邊感嘆 VB 的易用性,一邊沮喪地看着一些相似於「未定義類型」錯誤的發生。
一些批評家認爲 Visual Basic 的簡單特性使得其在將來具備傷害性。不少人自學了 VB,可是並無學到好的編程習慣。當 VB 進入課堂的時候,學生們不會學到不少基礎的程序技術和結構,由於不少技術已經包含在那些對用戶可見的組件裏面了。不用學習標準的編程習慣,由於 VB 具備可視化的特性,因此致使了一些莫名其妙的代碼的產生。並且不少錯誤和警告的檢查默認狀況下都是關閉的,程序員很難找到隱藏的錯誤。有經驗的程序員在用 VB 編程的時候都會把這些選項打開。
一些批評家批評微軟簡單地拷貝了 BASIC的思想到 Visual Basic 中。
Visual Basic 開發的程序只能運行在 Microsoft Windows中;且運行時還須要 VB 運行庫。
Visual Basic 不能很好的綜合 Windows的基礎 API,不少時候要使用低級運算的「小伎倆」來進行編程。而C 語言的低級內存運算比 VB 的要簡單得多。
VB語言做爲計算機語言的入門,是不少學生學習編程的入門級語言,大學生利用VB語言開始了他們學習計算機的世界。[4]  

正方觀點

任何工具都是針對不一樣任務發明的,如同刀劍和鋤頭,刀劍高手未必是鋤地高手,刀劍高手除了殺人,不能生產糧食養人,因此任何工具歧視都是錯誤的。Visual Basic的強大在於可以快速開發企業級軟件,使程序員有更多的時間和精力考慮用戶的需求,生產出知足用戶須要的軟件,特別適合大型企業級軟件的開發,好比MIS、MRP、MRP II、ERP等重量級的軟件,而不是花很長時間去製做一個只有幾K的DLL。
Visual Basic 的最大的優點在於它的易用性,可讓經驗豐富的VB程序員或是剛剛懂得皮毛的人都能用本身的方式快速開發程序。並且 VB 的程序能夠很是簡單的和數據庫鏈接。好比利用 控件能夠綁定數據庫,這樣一來用VB寫出的程序就能夠掌握數據庫的全部信息而不用寫一行代碼。
Visual Basic 開發的程序雖然僅在 Microsoft Windows 中獲得原生支持,但 Linux 等平臺中存在着一些項目,使得可以使用 Visual Basic 的代碼在這些平臺下順利編譯。
任何語言開發的程序都須要必定運行時環境的支持,對於大型軟件系統來講,須要支撐是很正常的,正所謂「站在巨人的肩膀上」。傳統 Visual Basic 開發的程序須要 VB 運行庫的支持;Visual Basic .NET 開發的程序(如C#)須要 .Net Framework 的支持;Java 開發的程序須要 Java 虛擬機的支持。
相關文章
相關標籤/搜索