小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Visual Basic是什么

 木秀-- 2011-04-08

Visual Basic

Visual Basic

 

Visual Basic
 Visual BasicVB)是一種由微軟公司開發(fā)的包含協(xié)助開發(fā)環(huán)境的事件驅(qū)動編程語言。從任何標(biāo)準(zhǔn)來說,VB都是世界上使用人數(shù)最多的語言——不僅是盛贊VB的開發(fā)者還是抱怨VB的開發(fā)者的數(shù)量。它源自于BASIC編程語言。VB擁有圖形用戶界面(GUI)和快速應(yīng)用程序開發(fā)(RAD)系統(tǒng),可以輕易的使用DAORDO、ADO連接數(shù)據(jù)庫,或者輕松的創(chuàng)建ActiveX控件。程序員可以輕松的使用VB提供的組件快速建立一個應(yīng)用程序。

發(fā)展歷史

1991年,微軟公司推出了Visual Basic 1.0版。這在當(dāng)時引起了很大的轟動。這個連接編程語言和用戶界面的進(jìn)步被稱為Tripod(有些時候叫做Ruby),最初的設(shè)計(jì)是由阿蘭·庫珀(Alan Cooper)完成的。許多專家把VB的出現(xiàn)當(dāng)做是軟件開發(fā)史上的一個具有劃時代意義的事件。其實(shí),以我們現(xiàn)在的目光來看,VB1.0的功能實(shí)在是太弱了;(不過最近VB6.0, VB.NET的功能相當(dāng)大!)。但在當(dāng)時,它是第一個“可視”的編程軟件。這使得程序員欣喜之極,都嘗試在VB的平臺上進(jìn)行軟件創(chuàng)作。微軟也不失時機(jī)地在四年內(nèi)接連推出VB2.0,VB3.0,4.0三個版本。并且從VB3開始,微軟將ACCESS的數(shù)據(jù)庫驅(qū)動集成到了VB中,這使得VB的數(shù)據(jù)庫編程能力大大提高。從VB4開始,VB也引入了面向?qū)ο?/font>的程序設(shè)計(jì)思想。VB功能強(qiáng)大,學(xué)習(xí)簡單。而且,VB還引入了“控件”的概念,使得大量已經(jīng)編好的VB程序可以被我們直接拿來使用。VB1.0的DOS版本VB1.0于1991年發(fā)布。

2002年Visual Basic .NET 2002 (v7.0)問世,2003年Visual Basic .NET 2003 (v7.1)問世,2005年11月7日Visual Basic 2005 (v8.0)問世,同時間推出Visual Basic 2005的免費(fèi)簡化版本Visual Basic 2005 Express Edition給Visual Basic初學(xué)者及學(xué)生使用。

VB 2005的“顯著”優(yōu)點(diǎn)是,可以直接編寫出XP風(fēng)格的按鈕,以及其他的控件。但是其編寫的小程序占用近10MB的內(nèi)存。

通過幾年的發(fā)展,它已成為一種專業(yè)化的開發(fā)語言和環(huán)境。用戶可用Visual Basic快速創(chuàng)建Windows程序,現(xiàn)在還可以編寫企業(yè)水平的客戶端/服務(wù)器程序及強(qiáng)大的數(shù)據(jù)庫應(yīng)用程序。

VB會吸引更多的贊譽(yù)和批評,也會繼續(xù)為廣大的用戶和程序員使用。它非常適合用來開發(fā)擁有友好界面的程序(比如針對終端的數(shù)據(jù)),但是不適合開發(fā)其它程序(比如聯(lián)合計(jì)算程序)。

語言特性

一個典型的VB進(jìn)程VB的中心思想就是要便于程序員使用,無論是新手或者專家。VB使用了可以簡單建立應(yīng)用程序的GUI系統(tǒng),但是又可以開發(fā)相當(dāng)復(fù)雜的程序。VB的程序是一種基于窗體的可視化組件安排的聯(lián)合,并且增加代碼來指定組建的屬性和方法。因?yàn)槟J(rèn)的屬性和方法已經(jīng)有一部分定義在了組件內(nèi),所以程序員不用寫多少代碼就可以完成一個簡單的程序。過去的版本里面VB程序的性能問題一直被放在了桌面上,但是隨著計(jì)算機(jī)速度的飛速增加,關(guān)于性能的爭論已經(jīng)越來越少。

窗體控件的增加和改變可以用拖放技術(shù)實(shí)現(xiàn)。一個排列滿控件的工具箱用來顯示可用控件(比如文本框或者按鈕]]。每個控件都有自己的屬性和事件。默認(rèn)的屬性值會在控件創(chuàng)建的時候提供,但是程序員也可以進(jìn)行更改。很多的屬性值可以在運(yùn)行時候隨著用戶的動作和修改進(jìn)行改動,這樣就形成了一個動態(tài)的程序。舉個例子來說:窗體的大小改變事件中加入了可以改變控件位置的代碼,在運(yùn)行時候每當(dāng)用戶更改窗口大小,控件也會隨之改變位置。在文本框中的文字改變事件中加入相應(yīng)的代碼,程序就能夠在文字輸入的時候自動翻譯或者阻止某些字符的輸入。

VB的程序可以包含一個或多個窗體,或者是一個主窗體和多個子窗體,類似于操作系統(tǒng)的樣子。有很少功能的對話框窗口(比如沒有最大化和最小化按鈕的窗體)可以用來提供彈出功能。

VB的組件既可以擁有用戶界面,也可以沒有。這樣一來服務(wù)器端程序就可以處理增加的模塊。

VB使用參數(shù)計(jì)算的方法來進(jìn)行垃圾收集,這個方法中包含有大量的對象,提供基本的面向?qū)ο笾С?。因?yàn)樵絹碓蕉嘟M建的出現(xiàn),程序員可以選用自己需要的擴(kuò)展庫。和有些語言不一樣,VB對大小寫不敏感,但是能自動轉(zhuǎn)換關(guān)鍵詞到標(biāo)準(zhǔn)的大小寫狀態(tài),以及強(qiáng)制使得符號表入口的實(shí)體的變量名稱遵循書寫規(guī)則。默認(rèn)情況下字符串的比較是對大小寫敏感的,但是可以關(guān)閉這個功能。

VB使得大量的外界控件有了自己的生存空間。大量的第三方控件針對VB提供。VB也提供了建立、使用和重用這些控件的方法,但是由于語言問題,從一個應(yīng)用程序創(chuàng)建另外一個并不簡單。

術(shù)語

在討論Visual Basic時,經(jīng)??梢月牭揭韵逻@些術(shù)語,因此對這些術(shù)語的基本理解十分有幫助。

控件——簡單的說,控件就是構(gòu)成或者說建造Visual Basic應(yīng)用程序的圖形化工具,包括窗體、按鈕、復(fù)選框、列表框、數(shù)據(jù)控件、表格控件和圖片控件等等...。
事件——由用戶或操作系統(tǒng)引發(fā)的動作。事件的示例有擊鍵、單擊鼠標(biāo)(Click)、雙擊鼠標(biāo)(DblClick)、一段時間的限制,或從端口接收數(shù)據(jù)。
方法——嵌入在對象定義中的程序代碼,它定義對象怎樣處理信息并響應(yīng)某事件。例如,數(shù)據(jù)庫對象有打開紀(jì)錄集并從一個記錄移動到另一個記錄的方法程序的基本元素,它含有定義其特征的屬性,定義其任務(wù)和識別它可以響應(yīng)的事件的方法。控件和窗體是Visual Basic中所有對象的示例。
對象——一個控件、窗體等都可被看作一個對象。
過程——為完成某些特定的任務(wù)而編寫的代碼段,過程通常用于響應(yīng)特定的事件,也可以當(dāng)作應(yīng)用程序的用戶自定義函數(shù)來使用。
屬性——屬性是組成用戶界面的各對象的性質(zhì)的具體描述。例如上述“對象”中所提到的尺寸、位置、顏色、寬度、高度等等都稱為控件的 屬性。屬性決定對象的外觀,有時也決定對象的行為。對象的屬性絕大部分是VB中已經(jīng)事先定義好的,但也有的屬性是需要在應(yīng)用 過程中才去定義的。屬性即可為對象提供數(shù)據(jù),也能從對象取回信息。

VB的局限性

VB5和VB6都是面向?qū)ο蟮木幊陶Z言,但是不包含繼承特性。VB中提供了特殊的類的功能,但是還是不能滿足程序員的需求。VB.net 包含了所有面向?qū)ο蟮奶匦浴?
多線程支持 (VB.Net 2002以及之后的版本,都支持多線程技術(shù)。)
異常處理。VB.net中使用了Try-Catch-Finally來處理異常。而VB中只有"On Error Goto line"語句。
對指針的支持非常有限。
VB只能支持8到32位的整形,很多語言都有無限制的支持。
VB不允許在任何數(shù)組內(nèi)存在不變的變量。
VB不支持以上特性,程序員需要自己建構(gòu)方法來實(shí)現(xiàn)相似的功能。

爭議

反對觀點(diǎn):

VB是一種充滿了爭議的語言:很多程序員對VB程序的質(zhì)量有強(qiáng)烈的感受。很多人認(rèn)為VB不配他們使用,認(rèn)為它是一種給兒童和菜鳥程序員的語言。它自從設(shè)計(jì)開始就是一種簡單的語言。一些C++Java中的特性在VB中并沒有出現(xiàn)。在感受開發(fā)的方便和快速的同時,一些類似于編譯時進(jìn)行類型和聲明檢查的功能在默認(rèn)情況下是關(guān)閉的。這樣一些程序員一邊感嘆VB的易用性,一般沮喪地地看著一些類似于“未定義類型”錯誤的發(fā)生。

一些批評家認(rèn)為VB的簡單特性使得其在未來具有傷害性。很多人自學(xué)了VB,但是并沒有學(xué)到好的編程習(xí)慣。當(dāng)VB進(jìn)入課堂的時候,學(xué)生們不會學(xué)到很多基礎(chǔ)的程序技術(shù)和結(jié)構(gòu),因?yàn)楹芏嗉夹g(shù)已經(jīng)包含在那些對用戶可見的組件里面了。不用學(xué)習(xí)標(biāo)準(zhǔn)的編程習(xí)慣,因?yàn)閂B具有可視化的特性,所以導(dǎo)致了一些莫名其妙的代碼的產(chǎn)生。而且很多錯誤和警告的檢查默認(rèn)情況下都是關(guān)閉的,程序員很難找到隱藏的錯誤。有經(jīng)驗(yàn)的程序員在用VB編程的時候都會把這些選項(xiàng)打開。

很多批評家批評微軟簡單地拷貝了BASIC的思想到VB中。著名的計(jì)算機(jī)科學(xué)家Edsger Dijkstra說過一句名言:“如果一個學(xué)生最早學(xué)過BASIC,那么幾乎不可能讓他學(xué)會優(yōu)秀的編程:因?yàn)檫@些人已經(jīng)放棄了涅磐的希望。”(Dijkstra對待Fortran、PL/1、COBOL和APL同樣也毫不留情。)

另外一個笑話是:“真正的程序員不用BASIC。12歲以下的孩子才用。”

并不是非常簡便,它開發(fā)的程序只能運(yùn)行在Microsoft Windows中。

個頭太大了。Visual Studio要用好幾張盤才能裝下。VB程序在運(yùn)行時候還需要一個1.4M大小的運(yùn)行庫。

IDE中有錯誤。

VB不能很好的綜合Windows的基礎(chǔ)API,很多時候要使用低級運(yùn)算的“小伎倆”來進(jìn)行編程。而C語言的低級內(nèi)存運(yùn)算比VB的要簡單得多。

支持觀點(diǎn):

但是很多VB的支持者解釋說VB的易用性就是它最大的優(yōu)勢,可以讓經(jīng)驗(yàn)豐富的VB程序員或是剛剛懂得皮毛的人都能用自己的方式快速開發(fā)程序。而且VB的程序可以非常簡單的和數(shù)據(jù)庫連接。比如利用控件可以綁定數(shù)據(jù)庫,這樣一來用VB寫出的程序就可以掌握數(shù)據(jù)庫的所有信息而不用寫一行代碼。

很多語言的特性比如GoSub、On Error和用變量名字的最后一個字符判斷聲明類型(比如字符串型str a,b,c As Integer”聲明了c為整形變量,但是a、b都是Variant類型的。 {這兒我說明一下,如果想申明3個Integer,必須寫 Dim a as Integer, b As Integer, c as Integer;而直接寫Dim a,后面不寫類型,則自動變成Variant類型——占用大量資源。} 還有一些特性,比如下劃線字符“_”用于一行代碼分多行寫時候。一些程序員在使用的時候由于不規(guī)范使得便引起報(bào)錯。

發(fā)展時間線

1991年4月,Visual Basic 1.0 Windows版本發(fā)布
1992年9月,Visual Basic 1.0 DOS版本發(fā)布。
1992年11月,VB2.0發(fā)布。它對于上一個版本的界面和速度都有所改善。
1993年夏天,VB3.0發(fā)布,分為標(biāo)準(zhǔn)版和專業(yè)版。其中包含一個數(shù)據(jù)引擎,可以直接讀取Access數(shù)據(jù)庫。
1995年8月,VB4.0發(fā)布了32位版本和16位的版本。其中包含了對類的支持。
1997年2月,VB5.0發(fā)布。程序員可以用32位的版本導(dǎo)入由4.0版本創(chuàng)建的16位程序,并且能順利編譯。同時還包含了對用戶自建控件的支持。
1998年夏天,VB6.0發(fā)布。
2001年,Visual Basic.net和.NET Framework發(fā)布。由于其使用了新的核心和特性,所以很多VB的程序員都要改寫程序。
2003年,Visual Basic.net 2003和.NET Framework 1.1發(fā)布。
2004年,微軟開放了Visual Studio 2005的測試版本(代號Whidbey)。包含了.NET Framework2.0的測試版本。
2005年,微軟宣布將不會再對非.NET版本的VB進(jìn)行支持。VB社群立即作出反應(yīng)表示關(guān)心這個消息,一些老用戶還遞交了希望能夠繼續(xù)對VB進(jìn)行技術(shù)支持的請?jiān)笗?。微軟目前還不愿意改變他們的決定。

由VB派生的語言

微軟開發(fā)了一系列有關(guān)VB的腳本語言:

Visual Basic for Applications,即VBA,包含在微軟的應(yīng)用程序中(比如Microsoft Office),以及類似WordPerfect Office這樣第三方的產(chǎn)品里面。VBA這樣嵌入在各種應(yīng)用程序中看起來有些矛盾,但是它的功能和VB一樣強(qiáng)大。

VBScript是默認(rèn)的ASP語言,還可以用在Windows腳本編寫和網(wǎng)頁編碼中。盡管它的語法類似于VB,但是它卻是一種完全不同的語言。VBS不使用VB運(yùn)行庫運(yùn)行,而是由Windows腳本主機(jī)解釋執(zhí)行。這兩種語言之中的不同點(diǎn)影響ASP網(wǎng)站的表現(xiàn)。

當(dāng)微軟準(zhǔn)備開發(fā)一種新的編程工具的時候,第一決定就是利用最搶手的VB6來進(jìn)行舊改,或者就是重新組建工程開發(fā)新工具。微軟后來開發(fā)了VB的繼任者Visual Basic .NET,同時也是.NET平臺的一部分。VB.net編程語言是一種真正的面向?qū)ο缶幊陶Z言,和VB并不完全兼容。

關(guān)于VB.NET

Visual Studio.net 2005已經(jīng)在2005年11月7日發(fā)布。
Visual Basic.NET(簡稱VB.NET)是新一代的VB。它不是VB 6.0的簡單升級,VB.NET與VB之間有非常大的區(qū)別。其新特性主要表現(xiàn)在以下幾方面:
1.VB.NET完全集成到Visual Studio集成開發(fā)環(huán)境中,在這種集成開發(fā)環(huán)境與VB在若干方面有差異。主要體現(xiàn)在窗體的布局以及菜單等方面都有所不同。
2.VB.NET項(xiàng)目與VB不同。它使用基于文件夾的模型,所有項(xiàng)目均放置在項(xiàng)目文件夾層次結(jié)構(gòu)中。
3.VB.NET中使用ADO.NET來訪問數(shù)據(jù)庫,ADO.NET是.NET框架的一部分。在VB.NET中實(shí)現(xiàn)數(shù)據(jù)訪問的方法重要有兩種:其一是在程序設(shè)計(jì)階段,通過創(chuàng)建、配置數(shù)據(jù)適配器DataAdapter和生成數(shù)據(jù)集DataSet;其二是在運(yùn)行中,通過編程方式動態(tài)創(chuàng)建配置數(shù)據(jù)適配器和創(chuàng)建、生成數(shù)據(jù)集。
4.在VB.NET中是使用ASP.NET技術(shù)來編寫Web頁面的。在ASP.NET中使用的也不是腳本語言,而是真正意義的編程語言。憑借ASP.NET的Web應(yīng)用程序、XML Web Services等基于Web的功能,使得VB.NET開發(fā)Web頁面與開發(fā)Windows應(yīng)用程序很相似,Web頁面代碼也顯得有條有理了。
5. VB.NET已經(jīng)成為完全的面向?qū)ο蟮木幊陶Z言。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多