Visual Basic

用手机看条目

出自 MBA智库百科(https://wiki.mbalib.com/)

目錄

什麼是

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

Visual Basic語言特點

基本特點

  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語言標準

註釋方式

  在VB中,註釋有2種方式。

  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控制項類似,只要依次選擇。

Visual Basic派生語言

  微軟開發了一系列由 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 相對應之程式代碼。

本條目對我有幫助1
MBA智库APP

扫一扫,下载MBA智库APP

分享到:
  如果您認為本條目還有待完善,需要補充新內容或修改錯誤內容,請編輯條目

本条目由以下用户参与贡献

刘维燎.

評論(共0條)

提示:評論內容為網友針對條目"Visual Basic"展開的討論,與本站觀點立場無關。

發表評論請文明上網,理性發言並遵守有關規定。

MBA智库
打开APP

以上内容根据网友推荐自动排序生成