.NET是一種開(kāi)發(fā)平臺(tái),它支持多種語(yǔ)言開(kāi)發(fā),有C#.NET,VB.NET....
創(chuàng)新互聯(lián)一直通過(guò)網(wǎng)站建設(shè)和網(wǎng)站營(yíng)銷(xiāo)幫助企業(yè)獲得更多客戶(hù)資源。 以"深度挖掘,量身打造,注重實(shí)效"的一站式服務(wù),以網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、移動(dòng)互聯(lián)產(chǎn)品、成都全網(wǎng)營(yíng)銷(xiāo)服務(wù)為核心業(yè)務(wù)。10余年網(wǎng)站制作的經(jīng)驗(yàn),使用新網(wǎng)站建設(shè)技術(shù),全新開(kāi)發(fā)出的標(biāo)準(zhǔn)網(wǎng)站,不但價(jià)格便宜而且實(shí)用、靈活,特別適合中小公司網(wǎng)站制作。網(wǎng)站管理系統(tǒng)簡(jiǎn)單易用,維護(hù)方便,您可以完全操作網(wǎng)站資料,是中小公司快速網(wǎng)站建設(shè)的選擇。
VB是一種開(kāi)發(fā)語(yǔ)言
把VB移到.NET種就是VB.NET了。
C#點(diǎn)虐 優(yōu)點(diǎn):
運(yùn)算符重載。不安全代碼(指針和固定內(nèi)存區(qū))、?無(wú)符號(hào)整數(shù)、移位運(yùn)算。
VB的優(yōu)點(diǎn):?
即時(shí)編譯、靜態(tài)事件綁定、條件異常捕獲、COM兼容類(lèi)、寬松的類(lèi)型檢查和變量聲明、Visual Basic Runtime庫(kù)、可選參數(shù)、帶參數(shù)屬性、模塊等語(yǔ)言特征、動(dòng)態(tài)數(shù)組。
通過(guò)VB.NET開(kāi)發(fā)好的程序絕對(duì)沒(méi)有問(wèn)題(包括Direct X游戲開(kāi)發(fā))。雖然VB.NET的資料少,但是只要C#支持的VB.NET都支持(大體上這樣,因?yàn)槎家?jīng)過(guò)MSIL中間環(huán)節(jié)。除了指針之類(lèi)的VB.NET不支持C#支持,但是沒(méi)有多大實(shí)際用處)。
vb點(diǎn)虐 的資料以英文資料居多(只有英文資料才有看頭,中國(guó)的沒(méi)有什么好資料),得看看英文水平過(guò)不過(guò)關(guān)。還有VB.NET的ide也比C#的IDE好得多,代碼看得也舒服。(C#的大括號(hào){}太煩人)。
至于VB6對(duì)C的幫助,只是理解上會(huì)容易一些,其它用處不大。有VB6的基礎(chǔ)學(xué)VBNET會(huì)方便一些,但是并不是會(huì)VB6就會(huì)VB.NET,它們差別也不小。
擴(kuò)展資料:
NET、C#和ASP.NET之間的區(qū)別 :
1、NET是一個(gè)平臺(tái),一個(gè)抽象的平臺(tái)的概念。
NET 平臺(tái)其本身實(shí)現(xiàn)的方式其實(shí)還是庫(kù),抽象層面上來(lái)看是一個(gè)平臺(tái)。
基本可以理解的NET核心就是NETFramwork。
NETFramework包括兩個(gè)關(guān)鍵組成元素:
a. CommonLanguageRuntime,公共語(yǔ)言運(yùn)行時(shí)(CLR0)-提供內(nèi)在管理,代碼安全性檢測(cè)等功能。
b. NETFrameworkClassLibrary,.NET 框架類(lèi)庫(kù)(FLC)-提供大量應(yīng)用類(lèi)庫(kù),提高開(kāi)發(fā)效率。
學(xué)習(xí)NET Framework 是所有.NET開(kāi)發(fā)人員都必須的,否則開(kāi)發(fā)NET程序永遠(yuǎn)都是停留在‘外功’的招式,NETramework 是NET開(kāi)發(fā)高手的‘內(nèi)功’修行之一。
2、C#是一個(gè)程序設(shè)計(jì)語(yǔ)言,僅僅是一個(gè)語(yǔ)言。
程序設(shè)計(jì)語(yǔ)言?xún)H僅是為了方便開(kāi)發(fā)人員和計(jì)算機(jī)溝通的工具,雖然 C#語(yǔ)法相對(duì) C 和?C+要多一些,但是相對(duì)來(lái)看 C#語(yǔ)法都比較固定,這樣使用起來(lái)卻都很容易。我認(rèn)可一位朋友說(shuō)的,C#的語(yǔ)法更嚴(yán)謹(jǐn)!
這里回過(guò)來(lái)看看NET和C#的關(guān)系,不得不提的是NET程序的執(zhí)行過(guò)程。
C#符合NETCLR 中的公共語(yǔ)言運(yùn)行規(guī)范。CLS:commonlanguagespecification,當(dāng)然所有的NET Language 都是符合這個(gè)規(guī)范的例如:VB.NET、XAML 和 C++/CL等等。
C#需要符合NETCLS,是因?yàn)镹ETCLR和JAVA虛擬機(jī)類(lèi)似,有一個(gè)中間語(yǔ)言共機(jī)器來(lái)執(zhí)行。所有不同語(yǔ)言的.NET代碼在執(zhí)行前會(huì)被編譯成同樣的中間語(yǔ)言(MSIL),所以所有NET 支持語(yǔ)言都必須符合符合CLS 規(guī)范。
P.S:如果做.NET3.0XAML開(kāi)發(fā)的朋友,可以嘗試下ildasm.exe看看XAML的應(yīng)用程序,會(huì)發(fā)現(xiàn)原來(lái) XAML其實(shí)很簡(jiǎn)單。
3、ASP.NET是一個(gè)網(wǎng)站開(kāi)發(fā)的技術(shù),僅僅是.NET框架中的一個(gè)應(yīng)用模型。
用微軟公司ASP.NET快速入門(mén)中的一句話(huà)來(lái)解釋?zhuān)珹SP.NET是用于生成基于Web的應(yīng)用程序的內(nèi)容豐富的編程框架。
ASP點(diǎn)虐 和C#的區(qū)別:
編寫(xiě)asp點(diǎn)虐 通常包括兩部分的代碼:網(wǎng)頁(yè)層和后臺(tái)處理層,網(wǎng)頁(yè)就是用標(biāo)記語(yǔ)言來(lái)寫(xiě)的,而網(wǎng)頁(yè)對(duì)應(yīng)的后臺(tái)處理程序則需要點(diǎn)虐 語(yǔ)言來(lái)完成,目前主要是采用c#和vb點(diǎn)虐 。
可以說(shuō)整個(gè)的asp點(diǎn)虐 網(wǎng)站通過(guò)c#或者vb點(diǎn)虐 來(lái)實(shí)現(xiàn)。而c#則是ms 點(diǎn)虐 framework的主要語(yǔ)言,可以用在網(wǎng)站,桌面應(yīng)用等方面??梢运闶且环N比較流行的編程語(yǔ)言。
vb是語(yǔ)言,vb點(diǎn)虐 是平臺(tái),通俗的講就是。點(diǎn)虐 是一個(gè)平臺(tái),在這個(gè)平臺(tái)里面用vb進(jìn)行開(kāi)發(fā)的就叫vb點(diǎn)虐 ,這里你可能要問(wèn),還有其他語(yǔ)言么?是滴,例如c#,j#,現(xiàn)在c#基本已經(jīng)屬于主流語(yǔ)言,vb點(diǎn)虐 的資料相對(duì)要少一些,但是官方支持提供的一般都是兩種語(yǔ)言都有。那asp點(diǎn)虐 又是什么東東呢。那就要看最初的asp了,顯然,asp點(diǎn)虐 是在asp的基礎(chǔ)上發(fā)展而來(lái)的,實(shí)現(xiàn)了前后臺(tái)代碼的分離。初次引用了服務(wù)器端控件的概念。就是看到的那些帶 asp:的控件,里面都要加runat=“server”。而微軟的WVC開(kāi)發(fā)框架卻有拋棄服務(wù)器端控件的趨勢(shì)。.framework3.5中的wpf,silverlight依舊能看到另類(lèi)的服務(wù)器端控件的身影。此時(shí)的語(yǔ)言已然不是html了。。。
建議用CLRInsideOut這個(gè)軟件自動(dòng)聲明。這是我用它翻譯成vb點(diǎn)虐 聲明的結(jié)果:
System.Runtime.InteropServices.StructLayoutAttribute(System.Runtime.InteropServices.LayoutKind.Sequential)??_
Public?Structure?tagRECT
'''LONG-int
Public?left?As?Integer
'''LONG-int
Public?top?As?Integer
'''LONG-int
Public?right?As?Integer
'''LONG-int
Public?bottom?As?Integer
End?Structure
System.Runtime.InteropServices.DllImportAttribute("Unknown",?EntryPoint:="dMain")??_
Public?Shared?Sub?dMain(ByVal?pImage?As?System.IntPtr,?ByRef?rcRoi?As?tagRECT,?ByVal?w?As?Integer,?ByVal?h?As?Integer,?ByVal?PlateCharacters?As?System.IntPtr,?ByRef?rectPlateLocation?As?tagRECT,?ByRef?PlateReliability?As?Integer,?ByVal?nMod?As?Integer)
End?Sub
把里面的Unknown換成你用的dll名稱(chēng)