真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

vb.netcsgl的簡單介紹

VB、VB.NET、ASP、ASP.NET、C#、C#.net、.net的區(qū)別是什么啊?

VB是微軟早期的面向過程的編程語言,輸入pascal類型

創(chuàng)新互聯(lián)從2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站建設(shè)、做網(wǎng)站網(wǎng)站策劃,項目實(shí)施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元寧江做網(wǎng)站,已為上家服務(wù),為寧江各地企業(yè)和個人服務(wù),聯(lián)系電話:18982081108

VB.NET是運(yùn)行在.NET

Framework之上的面向?qū)ο蟮恼Z言,基本遵循VB的語法

ASP是微軟早期的用于動態(tài)網(wǎng)頁開發(fā)的語言,其特點(diǎn)是前后臺代碼寫在同一文件中

ASP.NET是微軟用于替代ASP的動態(tài)網(wǎng)頁開發(fā)語言,特點(diǎn)是前后臺代碼分離

C#是微軟專為.NET平臺定制的語言,可以說是.NET平臺上的最正統(tǒng)的語言,當(dāng)然VB.NET在功能上與C#是完全一致的,二者編譯后都會生成極度相似的IL(中間語言)

C#.NET沒聽說過,應(yīng)該就是C#

.NET即.NET

Framework是現(xiàn)在微軟的看家平臺,所有的.NET程序都必須要在.NET

Framework上運(yùn)行,你可以將其簡單地看成是一個基礎(chǔ)類庫。(其實(shí)該框架還會幫助你管理資源分配等等)

Visual Basic .NET的編譯

.NET語言,包括VB.NET,它們所開發(fā)的程序源代碼并不是直接編譯成能夠直接在操作系統(tǒng)上執(zhí)行的二進(jìn)制本地代碼,而是被編譯成為中間代碼,然后通過.NET Framework的通用語言運(yùn)行時(CLR)——執(zhí)行?!∷械?Net編程語言都被編譯成這種被稱為MSIL(Microsoft Intermediate Language )的中間代碼,這與Java的字節(jié)碼類似。因此雖然最終的程序在表面上仍然與傳統(tǒng)意義上的可執(zhí)行文件都具有“.exe”的后綴名。但是實(shí)際上,如果計算機(jī)上沒有安裝.Net Framework,那么這些程序?qū)⒉荒軌虮粓?zhí)行。在程序執(zhí)行時,.Net Framework將中間代碼翻譯成為二進(jìn)制機(jī)器碼,從而使它得到正確的運(yùn)行。最終的二進(jìn)制代碼被存儲在一個緩沖區(qū)中。所以一旦程序使用了相同的代碼,那么將會調(diào)用緩沖區(qū)中的版本。這樣如果一個.Net程序第二次被運(yùn)行,那么這種翻譯不需要進(jìn)行第二次,速度會明顯加快。

VB.NET代碼之所以不直接編譯成二進(jìn)制機(jī)器碼,是基于.NET跨平臺這一目標(biāo)的考慮。 Visual Basic .NET 2002

2002年Visual Basic .NET 問世,此后Visual Basic 包含在 Visual Studio套裝中。該版本又被稱為VB 7.0,是與C#一起在2002年發(fā)布的最初始的VB.net版本。C#是一門新設(shè)計.Net語言并且語法上和Java有一定的相似性,所以被大力宣傳為微軟對付JAVA的王牌,受到媒體極力關(guān)注。然而VB.NET則相反被錯誤地認(rèn)為僅僅是VB的一個升級(故有時被稱為VB7),它的受關(guān)注度也因此較低,當(dāng)然VB社區(qū)以及喜歡Basic系列風(fēng)格的語言的人還是很關(guān)注它的。那些試用過此版VB.NET的人在層層幕布下發(fā)現(xiàn)一個強(qiáng)大卻艱深的語言。不過任何一種語言都是有弱點(diǎn)的,當(dāng)然后面這一點(diǎn)也是.NET語言的共性,那就是運(yùn)行的計算機(jī)上必須裝相應(yīng)版本的.Net framework。

Visual Basic .NET 2003

該版本是和.NET Framework 1.1一起發(fā)布的。新功能包括對.NET Compact Framework的支持和更好的VB升遷向?qū)А2⒏倪M(jìn)了運(yùn)行狀況,IDE穩(wěn)定性(尤其是后臺編譯器),以及運(yùn)行時RunTime穩(wěn)定性。另外,VB.NET2003還有一個學(xué)院版Visual Studio .NET 2003 Academic Edition (VS03AE),它是分發(fā)給各國某些學(xué)者免費(fèi)使用的版本。

Visual Basic .NET 2005

該版本是VB.Net的重大轉(zhuǎn)變。但是這個版本的 Visual Studio 仍然還是面向 .NET 框架的(版本2.0)。它同時也能開發(fā)跨平臺的應(yīng)用程序,如開發(fā)使用微軟操作系統(tǒng)的手機(jī)的程序等。總體來說是一個非常龐大的軟件,甚至包含代碼測試功能。

Visual Basic .NET 2008

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

Visual Studio 2010

Visual Studio 2010于2010年4月12日上市,其中包含 Visual Basic .NET 2010 。Visual Studio是微軟公司推出的開發(fā)環(huán)境。是目前最流行的Windows平臺應(yīng)用程序開發(fā)環(huán)境。Visual Studio 2010集成開發(fā)環(huán)境(IDE)的界面被重新設(shè)計和組織,變得更加簡單明了。Visual Studio 2010同時帶來了 NET Framework 4.0、Microsoft Visual Studio 2010 CTP( Community Technology Preview--CTP),并且支持開發(fā)面向Windows 7的應(yīng)用程序。除了Microsoft SQL Server,它還支持 IBM DB2和Oracle數(shù)據(jù)庫等。

Visual Studio 2012

從該版本開始VB.NET已沒有單獨(dú)發(fā)售的IDE了,微軟給Visual Basic .NET 以及C#開發(fā)者的IDE就只有Visual Studio 了。該版本增加了modern(原metro)風(fēng)格的支持等眾多新特性。

Visual Studio 2015

增加了大量新特性,提升你的編寫效率。對編譯器和開發(fā)環(huán)境優(yōu)化,提高編譯速度,幫你重構(gòu)代碼和解決錯誤。最明顯的14項改進(jìn)見參考資料的14 Top Improvements in Visual Basic 14。 不能簡單認(rèn)為VB .net是VB的新版本。首先它們一個是完全面向?qū)ο蟮恼Z言,而另一個不是完全面向?qū)ο蟮?,其次VB .NET是構(gòu)建于.Net framework之上的。當(dāng)然,它們同屬Basic系列語言,又同為微軟所開發(fā),語法上有一定的相似或沿襲是很正常的,但不能因此認(rèn)為VB .NET是VB的升級版。

對于想從VB轉(zhuǎn)到VB .NET的開發(fā)者來說,如果你只是喜歡Basic系列語言的代碼風(fēng)格,那么你的遷移會很順利,如果你想沿襲之前VB的編程思想和習(xí)慣,你會很苦惱,原因之一就是VB .NET貫穿的是完全面向?qū)ο蟮乃枷耄鳹B不是。

微軟為使VB開發(fā)者更容易轉(zhuǎn)到VB .NET,兼容一些VB6函數(shù)和庫的用法,但是比不上.NET語言中自帶的可替換的函數(shù)和庫來得高效,所以我們應(yīng)該盡量使用.NET下的新方法。微軟還提供了VB到VB .NET的自動轉(zhuǎn)換器,雖幾經(jīng)改進(jìn),但仍無法轉(zhuǎn)換全部代碼,幾乎所有非小型程序都需要人工修改以完成編譯。為了運(yùn)行優(yōu)化,大多程序需要大量工作去重構(gòu)。

爭議與解釋:許多資深的VB程序員抱怨VB .NET,因為VB .NET丟掉了許多不再發(fā)行的VB6中使用的大量語言constructs和用戶界面功能,并且對保留下來的東西也改變了語意。其實(shí)不應(yīng)該再把VB和VB .NET做功能上的比較,因為它們除了有些語法相似外,可以說是完全不同的兩種語言。

Visual Basic .NET與VB都代表了Basic系列語言的編碼風(fēng)格,Visual Basic .NET是這種編碼風(fēng)格在.NET平臺上的繼承,而不是同系列語言VB的沿襲。

語言革命

* 1991年4月,Visual Basic誕生,Visual Basic 1.0 Windows版本發(fā)布。這個連接編程語言和用戶界面的進(jìn)步被稱為Tripod(有些時候叫做Ruby),最初的設(shè)計是由阿蘭·庫珀(Alan Cooper)完成的。 1992年9月,Visual Basic 1.0 DOS版本發(fā)布。

* 1998年夏天,VB6.0發(fā)布。

* 2001年,Visual Basic .NET和.NET Framework發(fā)布。Visual Basic .NET正式誕生。

* 2005年,微軟宣布將不會再對非.NET版本的VB進(jìn)行支持。

*2010年,Visual Basic .NET隨Visual Studio 2010發(fā)布,不再提供單獨(dú)的Visual Basic .NET IDE。 MONO開發(fā)平臺提供了一個VB.NET特性庫(VB.NET-specific libraries)并著手研發(fā)一個編譯器和Windows Forms GUI 庫。由于各方面的原因,VB.NET開發(fā)的開源工具較C#發(fā)展得慢一些。

C#與VB.net有什么不同呀?

都說在.NET里,.NET framework和CLR是應(yīng)用運(yùn)行的基礎(chǔ)。那么VB.NET和C#是不是就完全一樣,只是語法不同嗎?

一、C#

--- 像VB一樣簡單,像C++一樣強(qiáng)大的新語

C#是第一流的面向組件的語言

由 Turbo Pascal, Delphi, and Visual J++的首席設(shè)計師Anders Hejlsberg 傾心3年設(shè)計

所有的語言元素都是真正的對象

開發(fā)強(qiáng)壯和可重用的軟件

所有的.NET Framework中的基類庫(Base Class Library)都由C# 編寫

二、VB.NET

--- 完全面向?qū)ο蟮腂ASIC語言

1.新語言特性

完全面向?qū)ο蟥C 繼承(Inheritance), 重載(overloading), 共享的成員, 結(jié)構(gòu)化異常處理

強(qiáng)壯的語言 – 嚴(yán)格的類型檢查, 變量聲明時初始化,支持垃圾收集(Garbage collection)

強(qiáng)大 – 支持委托(Delegates), free threading,Variant 數(shù)據(jù)類型被 Object 代替

2.與VB6一致的語法

三、2者的區(qū)別?

1.語法上的差異

例如循環(huán)的寫法

VB.NET

For I = 1 To 10

‘ for loop

Next I

C#

For (i=1;i11;i++) {

// for loop

}

另外Visual Basic 對大小寫不敏感,而C#是大小寫敏感的。

2.C# 具有但 Visual Basic 不具有的特性

指針, 移位操作符, 內(nèi)嵌的文檔(XML)

重載操作符

3.Visual Basic具有但 C# 不具有的特性

更豐富的語法: Events, Try…Catch, Select…Case, 實(shí)現(xiàn) Interface

后期綁定(Late binding), 動態(tài)數(shù)組, 模塊(modules), 可選參數(shù), 參數(shù)屬性(parameterized properties)

后臺編譯

C#與VB.net間移植的技巧

按理說,這兩種語言沒有什么移植的必要,因為他們生成的代碼可以完全通用。但是如果一個工程基本上是VB寫成的,卻需要少許已經(jīng)存在的C#過程,用組件并不是一種效率很高的辦法。就算是學(xué)習(xí)C#或VB,學(xué)會他們之間的移植可以雙倍的利用已經(jīng)存在的代碼(如好玩的Donkey.net就只有VB版)。

有人比較過這兩種語言,得出的結(jié)論是他們很相似。但即便是這樣,VB初學(xué)者看到諸如((Button)sender).Text=“啟動”;之類的語法不知道如何移植到VB,而C#初學(xué)者看到Handles Button1.Click等語法也會為移植而感到頭痛。下面就看看他們最難移植的部分:

1、Option語句。VB的Option語句可以打開或關(guān)閉變量聲明檢查和類型轉(zhuǎn)換檢查。尤其是Option Strict被關(guān)閉后,VB變成弱類型語言,很多類型轉(zhuǎn)換都是自動的,移植到C#中會產(chǎn)生無數(shù)錯誤。因此,如果要將帶有Option Strict Off語句的VB程序移植到C#,最好先在VB中將Option Strict打開,然后把所有類型轉(zhuǎn)換出錯的地方變成強(qiáng)類型轉(zhuǎn)換,然后再進(jìn)行移植。

2、類型轉(zhuǎn)換。VB提供了很多類型轉(zhuǎn)換函數(shù)型運(yùn)算符,如CInt(),CSng(),CStr()等,在C#中只要用(int),(float),(String)即可。然而如果不是標(biāo)準(zhǔn)類型,如下面的C#語句:

((System.Button)sender).Text=“啟動”;

就要使用VB的函數(shù)型運(yùn)算符CType來實(shí)現(xiàn)。上面的代碼正確的移植方法是:

CType(sender,System.Button).Text=“啟動”

千萬不要使用某些人推薦的,將Option Strict關(guān)閉,然后用后期綁定調(diào)用sender對象的方法,這根本不符合程序移植不能改變本質(zhì)的要求。

3、修飾符和屬性標(biāo)簽。VB和C#的修飾符是完全對等存在的,但是拼寫往往不同,給移植帶來了很多麻煩,尤其是表示相同意思的關(guān)鍵字從字面理解完全不同的時候。下面就給出了VB和C#對應(yīng)的關(guān)鍵字:

VB

C#

VB

C#

Inherits

:

Implements

:

MustInherit

abstract

NotInheritable

sealed

Overridable

virtual

NotOverridable

sealed

MustOverride

abstract

Overrides

override

[Overloads]

Shadows

new

Shared

static

Public

public

Protected

protected

Friend

internal

Protected Friend

protected internal

Private

private

Static

用別的方法實(shí)現(xiàn)

ByVal

ByRef

ref

Optional

ParamArray

params

無法實(shí)現(xiàn)

unsafe

無法實(shí)現(xiàn)

fixed

可以看出,VB的關(guān)鍵字比較長,而且使用上也比C#更加嚴(yán)格。從C#向VB移植的時候,要分外注意哪些VB有而C#沒有的關(guān)鍵字以及在C#拼寫相同,在VB中拼寫不同的關(guān)鍵字(如MustOverride和MustInherit)。有些關(guān)鍵字如unsafe,如果C#使用了他們,將無法移植到VB中。好在這些關(guān)鍵字在商業(yè)應(yīng)用中并不常用。

屬性標(biāo)簽在這兩種語言中非常的相似,移植上應(yīng)該沒有任何難度,只要知道在C#中用方括號[]表示屬性標(biāo)簽,而在VB中用的是尖括號。另外,如果要用名稱結(jié)合傳遞參數(shù),C#直接使用=號,而VB使用:=(冒號和等號)。

4、委派類型。委派類型就是安全的函數(shù)指針類型。在C#中,難以分辨是函數(shù)指針在工作還是函數(shù)本身在工作,因為他們的語法相同。當(dāng)要為一個委派類型的變量復(fù)制的時候,直接等于一個函數(shù)即可,如:

public delegate void FuncType(Object e)

...

FuncType func;

func=new FuncType(this.SampleFunction1);

//調(diào)用

func(something);

//換指向另外一個函數(shù)

func=this.SampleFunction2

然而VB中,委派類型就像是一般的對象,有它的方法,與函數(shù)本身明顯不同。你不能將過程的名字直接賦給一個委派類型的對象,而必須使用AddressOf運(yùn)算符,下面的例子就是上文C#程序的VB版,注意那些實(shí)現(xiàn)不同的地方:

Public Delegate Sub FuncType(ByVal eAs Object)

...

Dim func As FuncType

func=New FuncType(AddressOf Me.SampleFunc1)

‘調(diào)用

func.Invoke(something)

‘換指向另外一個函數(shù)

func=AddressOf Me.SampleFunction2

5、事件處理。這是兩種語言最大的差別之一,VB傳承以前版本強(qiáng)大的事件處理機(jī)制,許多語法都比C#更加靈活。好在無論什么情況,他們之間都是可以互相移植的。

對于事件定義,兩種語言都是一個委派類型加一個事件屬性,如:

[C#]

public delegate void MyEventHandler(Object sender,EventArgs e);

public event MyEventHandler MyEvent;

[Visual Basic]

Public Delegate Sub MyEventHandler(ByVal sender As Object,ByVal eAs EventArgs)

Public Event MyEvent As MyEventHandler

VB還支持另外一種更加緊湊的定義方法,只有一條語句:

Public Event MyEvent(ByVal sender As Object,ByVal eAs EventArgs)

移植的時候,要把參數(shù)部分分離出來,成為一個委派類型,再按照普通方法定義事件即可。

關(guān)于事件響應(yīng),C#與Delphi等語言一樣,是動態(tài)綁定事件過程的,其語法類似于下:

internal MyClass myobj;

...

myobj=new MyClass();

...

myobj.MyEvent+=this.myobj_MyEvent;

...

protected void myobj_MyEvent(Object sender,EventArgs e)

{

//語句

}

可以看到,C#是利用運(yùn)算符連接事件過程和事件屬性的。之后,還可以用-=運(yùn)算符解除事件過程與事件屬性的綁定。VB不支持運(yùn)算符重載,但仍然支持這種動態(tài)綁定的事件過程,方法是使用AddHandler和RemoveHandler關(guān)鍵字。如上面黑體部分可以移植為:

AddHandler myobj.MyEvent,AddressOf Me.myobj_MyEvent

解除綁定的語法與此類似,只是關(guān)鍵字為RemoveHandler而已。一定不要忘記過程前面還有一個AddressOf關(guān)鍵字!

動態(tài)綁定的事件過程工作起來比較慢,VB支持一種更快的靜態(tài)綁定事件過程。一旦為對象設(shè)置了靜態(tài)的事件過程,就不能解除綁定,一般大多數(shù)情況都是如此。語法如下:

‘定義變量時使用WithEvents關(guān)鍵字

Friend WithEvents myobj As MyClass

‘直接書寫事件過程,注意Handles的語法:

Protected Sub myobj_MyEvent(ByVal sender As Object,ByVal eAs EventArgs)_

Handles myobj.MyEvent

‘語句

End Sub

它表示myobj_MyEvent這個過程僅僅響應(yīng)myobj.MyEvent這個過程。如果一個過程要響應(yīng)很多個事件,把他們列在Handles后面,用逗號隔開,如Handles Event1,Event2,...

遇到這種情況,要看清Handles后面的所有對象和事件,將它們一一改寫成動態(tài)綁定的語句:

Protected Sub XXX(...)Handles myobj1.MyEvent,myobj2.MyEvent

==

myobj1.MyEvent+=this.XXX;

myobj2.MyEvent+=this.XXX;

...

protected void XXX(...){}

當(dāng)事件比較多時,C#顯著變得比較麻煩,幸好一個過程響應(yīng)一大堆事件的情況也不太多(不過我就編寫過一個過程相應(yīng)8個事件,移植起來好麻煩?。?。原則上說,將靜態(tài)事件過程移植為動態(tài)事件過程并沒有完全遵守移植的規(guī)定,但我估計他們實(shí)現(xiàn)的原理不會相差太多,所以也不用擔(dān)心。

6、異常處理。VB支持兩種形式的異常,即.net框架的異常和VB自己的錯誤號碼。而C#只支持第一種。用到VB自己的錯誤號碼的程序幾乎無法移植到C#中,所以應(yīng)該盡量使用.net框架的異常,如下面VB語句:

Try

‘發(fā)生錯誤的代碼

Catch When Err.Number=52

‘解決錯誤的代碼

End Try

這段代碼無法直接移植到C#中,只有用Exception對象取代Err對象獲得異常信息,才能順利移植。另外VB的When語句帶給Try語句十分靈活的用法,必須用很高的技巧才能在C#中實(shí)現(xiàn),這就需要具體問題具體分析了。

VB支持Exit Try語句,可以直接從Try塊或Catch塊跳轉(zhuǎn)到Finally塊。C#沒有提供類似的語法,可以用以下技巧:

[Visual Basic]

Try

‘一些語句

Exit Try

Finally

‘一些語句

End Try

[C#]

try

{

//一些語句

goto__leave;

}

finally

{

//一些語句

}

__leave://別忘了這里還有哦!

總之是利用了finally塊無法跳過的特征,用goto語句模擬了Exit Try語句。

如果VB程序用的是VB特有的On Error GoTo語句實(shí)現(xiàn)的錯誤處理,問題就麻煩了。代碼可能在過程中上下跳躍,無法預(yù)料語句的執(zhí)行方式。這種代碼理解起來就頭痛,更不要說移植了。總體來說,把所有語句統(tǒng)統(tǒng)轉(zhuǎn)移到try塊中,然后用catch一一處理錯誤。遇到要返回(Resume語句)的時候,只好Copy代碼了。反正不是一件容易的事情,慢慢改就是了。

7、模塊。VB支持模塊,C#不支持。但也沒有關(guān)系,只要在C#中制造一個abstract類,共享所有成員,就和模塊一樣了。當(dāng)然不能像VB一樣直接訪問模塊中的成員,需要用到“類名.成員名”的用法。

8、接口。C#在接口方面也沒有VB強(qiáng)大(怎么這么重要的功能也不做得好一點(diǎn)?),VB采用Implements語句結(jié)合接口的成員和類的實(shí)現(xiàn)成員,而C#是用名稱結(jié)合。因此VB就可以隨便修改實(shí)現(xiàn)成員的訪問級別和名稱,而C#就不能改名稱。將C#移植為VB時,最好利用VB.net編輯器直接實(shí)現(xiàn)接口,比較簡單。把VB移植為C#時,就必須把改過的名字都改回來,遇到名字沖突就更討厭了(這時候我?guī)缀醪幌朐僖浦矠镃#了)。給一個例子:

[Visual Basic]

Public Class Class1:Implements IMyInterface

Public Sub DoSth()Implements IMyInterface.Method1

End Sub

End Class

[C#]

public class Class1:IMyInterface

{

public void Method1()

{

}

}

9、運(yùn)算符重載。這會遇到VB頭痛了,既然VB不支持運(yùn)算符重載,那么就必須用子程序和函數(shù)來模擬運(yùn)算符。比如建立Plus和Minus方法模擬+和-的運(yùn)算。當(dāng)然還是有很多情況(比如遇上了explicit和implicit語句)就真的沒有辦法了,只好不移植了。運(yùn)算符重載是一個很不錯的功能,它能使很多操作簡單地完成,如果VB支持它,就真的是完美語言了。

如何在VB.NET中引用CSGL庫?

在VB.NET中不能直接添加opengl,需要引用csgl庫.具體方法如下:

1 下載csgl庫,壓縮包內(nèi)有l(wèi)ibinstall和dep兩個文件夾

2 運(yùn)行l(wèi)ibinstall文件夾下的install程序,將csgl.dll和csgl.native.dll文件添加至系統(tǒng)文件夾。

3 運(yùn)用dep文件夾下的ResBuider程序(具體功能暫不可知)。

4 將dep文件夾下的Debug和Release文件夾內(nèi)容分別復(fù)制到運(yùn)行目錄的相應(yīng)文件夾中即可。

vb.?net是面向?qū)ο蟮木幊陶Z言是對嗎?

VB.net

相對VB出現(xiàn)巨大變化的是語意,從運(yùn)行于基于COM的deterministic,

reference-counted的引擎之上的編程環(huán)境,轉(zhuǎn)變?yōu)槿婷嫦驅(qū)ο蟮幕?NET

Framework的語言。.NET

Framework包括了CLR(使用通用垃圾收集機(jī)制和JIT編譯引擎的虛擬機(jī))和大量的類庫。VB開發(fā)者進(jìn)入VB.NET要面對新增的大量類庫的問題。

上述變化表明了許多在運(yùn)行及維護(hù)相關(guān)優(yōu)化事宜下面的假定,一些VB6函數(shù)和庫不再存在而其它的仍然可用,但是比不上.NET語言中自帶的可替換的函數(shù)和庫來得高效。即使它們可被編譯,但大多從VB6轉(zhuǎn)換而來的應(yīng)用將需要一定程度上的重構(gòu)(refactoring),以全面利用新語言的優(yōu)點(diǎn)。在有關(guān)句法、應(yīng)用調(diào)試、部署和術(shù)語等方面的變化,有大量的文檔可以參考。

VB.net 和C#.net 各有什么優(yōu)缺點(diǎn)

C#.net優(yōu)點(diǎn):

運(yùn)算符重載。不安全代碼(指針和固定內(nèi)存區(qū))、?無符號整數(shù)、移位運(yùn)算。

VB的優(yōu)點(diǎn):?

即時編譯、靜態(tài)事件綁定、條件異常捕獲、COM兼容類、寬松的類型檢查和變量聲明、Visual Basic Runtime庫、可選參數(shù)、帶參數(shù)屬性、模塊等語言特征、動態(tài)數(shù)組。

通過VB.NET開發(fā)好的程序絕對沒有問題(包括Direct X游戲開發(fā))。雖然VB.NET的資料少,但是只要C#支持的VB.NET都支持(大體上這樣,因為都要經(jīng)過MSIL中間環(huán)節(jié)。除了指針之類的VB.NET不支持C#支持,但是沒有多大實(shí)際用處)。

vb.net的資料以英文資料居多(只有英文資料才有看頭,中國的沒有什么好資料),得看看英文水平過不過關(guān)。還有VB.NET的ide也比C#的IDE好得多,代碼看得也舒服。(C#的大括號{}太煩人)。

至于VB6對C的幫助,只是理解上會容易一些,其它用處不大。有VB6的基礎(chǔ)學(xué)VBNET會方便一些,但是并不是會VB6就會VB.NET,它們差別也不小。

擴(kuò)展資料:

NET、C#和ASP.NET之間的區(qū)別 :

1、NET是一個平臺,一個抽象的平臺的概念。

NET 平臺其本身實(shí)現(xiàn)的方式其實(shí)還是庫,抽象層面上來看是一個平臺。

基本可以理解的NET核心就是NETFramwork。

NETFramework包括兩個關(guān)鍵組成元素:

a. CommonLanguageRuntime,公共語言運(yùn)行時(CLR0)-提供內(nèi)在管理,代碼安全性檢測等功能。

b. NETFrameworkClassLibrary,.NET 框架類庫(FLC)-提供大量應(yīng)用類庫,提高開發(fā)效率。

學(xué)習(xí)NET Framework 是所有.NET開發(fā)人員都必須的,否則開發(fā)NET程序永遠(yuǎn)都是停留在‘外功’的招式,NETramework 是NET開發(fā)高手的‘內(nèi)功’修行之一。

2、C#是一個程序設(shè)計語言,僅僅是一個語言。

程序設(shè)計語言僅僅是為了方便開發(fā)人員和計算機(jī)溝通的工具,雖然 C#語法相對 C 和?C+要多一些,但是相對來看 C#語法都比較固定,這樣使用起來卻都很容易。我認(rèn)可一位朋友說的,C#的語法更嚴(yán)謹(jǐn)!

這里回過來看看NET和C#的關(guān)系,不得不提的是NET程序的執(zhí)行過程。

C#符合NETCLR 中的公共語言運(yùn)行規(guī)范。CLS:commonlanguagespecification,當(dāng)然所有的NET Language 都是符合這個規(guī)范的例如:VB.NET、XAML 和 C++/CL等等。

C#需要符合NETCLS,是因為NETCLR和JAVA虛擬機(jī)類似,有一個中間語言共機(jī)器來執(zhí)行。所有不同語言的.NET代碼在執(zhí)行前會被編譯成同樣的中間語言(MSIL),所以所有NET 支持語言都必須符合符合CLS 規(guī)范。

P.S:如果做.NET3.0XAML開發(fā)的朋友,可以嘗試下ildasm.exe看看XAML的應(yīng)用程序,會發(fā)現(xiàn)原來 XAML其實(shí)很簡單。

3、ASP.NET是一個網(wǎng)站開發(fā)的技術(shù),僅僅是.NET框架中的一個應(yīng)用模型。

用微軟公司ASP.NET快速入門中的一句話來解釋,ASP.NET是用于生成基于Web的應(yīng)用程序的內(nèi)容豐富的編程框架。

ASP.net 和C#的區(qū)別:

編寫asp.net通常包括兩部分的代碼:網(wǎng)頁層和后臺處理層,網(wǎng)頁就是用標(biāo)記語言來寫的,而網(wǎng)頁對應(yīng)的后臺處理程序則需要.net語言來完成,目前主要是采用c#和vb.net。

可以說整個的asp.net網(wǎng)站通過c#或者vb.net來實(shí)現(xiàn)。而c#則是ms .netframework的主要語言,可以用在網(wǎng)站,桌面應(yīng)用等方面??梢运闶且环N比較流行的編程語言。


網(wǎng)站題目:vb.netcsgl的簡單介紹
當(dāng)前網(wǎng)址:http://weahome.cn/article/hccepj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部