根據(jù)個(gè)人的經(jīng)歷談?wù)剛€(gè)人感想
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),古田企業(yè)網(wǎng)站建設(shè),古田品牌網(wǎng)站建設(shè),網(wǎng)站定制,古田網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,古田網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
我一開(kāi)始學(xué)的是VB,但學(xué)會(huì)后,也就是樓主你的樣子,后來(lái)學(xué)C,覺(jué)得C太垃圾了,這可能和VB的簡(jiǎn)單形成對(duì)比,C語(yǔ)言學(xué)會(huì)后就再也沒(méi)用,后來(lái)直接由VB升級(jí)到VB.NET,的確,如同樓主所說(shuō),.NET是比較簡(jiǎn)單,但是有個(gè)后遺癥,是現(xiàn)在我都煩的,就是編譯的軟件必須要在有.NET的電腦上運(yùn)行,XP是不帶.NET的,而且,版本還的相對(duì),如果用.NET4.0編的,在4.0以下版本電腦上運(yùn)行很可能就出錯(cuò),并且,如果你要打包的話也可以,就是把軟件打包成安裝包,然后附帶.NET環(huán)境,但缺點(diǎn)就出來(lái)了,.NET3.5完整安裝包235M,因?yàn)樗艘韵滤邪姹?,還好.NET4.0只有50M左右,因?yàn)樗话ㄒ韵掳姹?,但總之?NET就是簡(jiǎn)單了編程,但復(fù)雜了使用,軟件得打包,不像VB,編好后直接打開(kāi)EXE就可以了。所以就麻煩了,舉些例子,以前用VBA編OFFICE的宏,打開(kāi)OFFICE就可以編,編好后就存為XLSM就可以了,現(xiàn)在用.NET就成了VSTO了,編好后,不和文檔在一起,是分開(kāi)的DLL,如果要運(yùn)行,條件為,1,.NET環(huán)境,2,OFFICE,3,VSTO相比以前只需要OFFICE復(fù)雜了N倍,而且編輯時(shí)也需要VS(動(dòng)不動(dòng)就幾G)才行,相比以前只要有OFFICE就可以區(qū)別也很大,同樣,CAD的嵌入開(kāi)發(fā)也是一樣的。
所以總體來(lái)說(shuō),越底層的語(yǔ)言越底層的API越好用,越通用,越高級(jí)的越不通用,所以現(xiàn)在我開(kāi)發(fā)軟件我都煩了,要是一個(gè)小軟件幾百K~M,再附帶個(gè).NET就好幾百兆,用的時(shí)候還得安裝才能用,又不是什么大軟件有必要這么做么,還有.NET不是萬(wàn)能的,有些地方也得用API,而且.NET其實(shí)也挺復(fù)雜,難的地方不比API簡(jiǎn)單,其實(shí)就感覺(jué)是封裝好了的API而已。
至于數(shù)據(jù)庫(kù),的確.NET連接比較簡(jiǎn)單
至于學(xué)C?那就不用了,因?yàn)?NET的支持 C#,C++,VB,J#,只要會(huì)其中一種就可以了(而且你只要會(huì)其中一門(mén),是能看懂另一門(mén)的,比如我雖然編輯C#可能要出錯(cuò),但C#代碼我是幾乎全部能看懂的,網(wǎng)上查資料也能看懂其他語(yǔ)言的),大部分是學(xué)C的升級(jí)用C#.NET,VB的升級(jí)成VB.NET,你沒(méi)必要把它當(dāng)成另一中語(yǔ)言來(lái)學(xué),語(yǔ)法是基本一樣的。只是從一開(kāi)是學(xué)C的比較多,就成了C#的比較多而已了,至于語(yǔ)言,我不想做語(yǔ)言攻擊,其實(shí)都是有用的,就是看自己習(xí)慣不,比如我就不習(xí)慣C。
我也不想說(shuō)VB好還是VB.NET好,其實(shí)是看你用途,我只是至今沒(méi)發(fā)現(xiàn)什么網(wǎng)上的軟件是.NET編輯的,一些軟件比如CAD,OFFICE安裝時(shí)安裝了.NET,其實(shí)都不是它們是基于.NET編輯的,而是為了支持.NET的嵌入式開(kāi)發(fā),你所看到的軟件,比如QQ,迅雷,你看他們帶.NET了嗎?要是.NET好,他們干嘛不用,答案是因?yàn)椴环奖?,因?yàn)閄P系統(tǒng)一般是沒(méi)有.NET的,連WIN7內(nèi)嵌的.NET都不支持最新的.NET,也就是你用什么版本編的就得安裝相應(yīng)版本,那也要求對(duì)方電腦也得跟著升級(jí),而API是不用升級(jí)著走的~
所以,你要編的軟件在其他電腦上用,VB+API吧,如果你要個(gè)人電腦上用,VB.NET吧,如果你編小軟件vb+api吧,如果你要大型軟件就VB.NET吧,所以,你自己選吧。
希望給你的意見(jiàn)能對(duì)你有好處,現(xiàn)在深夜11點(diǎn)了,我也改睡了,拜拜!~
祝你學(xué)習(xí)愉快!
對(duì)了,還有點(diǎn),比如CAD2007不支持.NET3.5以上的編程,而且.NET編好的EXE或者DLL是可以用專門(mén)的軟件打開(kāi)看你源代碼的,也就是反編譯,這對(duì)于加密(可以看你的加密方法)就很麻煩了(據(jù)說(shuō)采用什么辦法可以解決)。
這是典型對(duì).net構(gòu)架不理解造成的!
只要是.net編程,一定使用的是.net類庫(kù),必須是同運(yùn)行版本的.net支持方可運(yùn)行。而所謂的vb.net只是說(shuō)編程的語(yǔ)言層使用的是vb語(yǔ)言而已。該語(yǔ)言在.net構(gòu)架下被編譯成為IL語(yǔ)言(MSIL,嚴(yán)格說(shuō)來(lái)是IL的一個(gè)子集)。而上層的語(yǔ)言只是產(chǎn)生軟件時(shí)所使用的一個(gè)不同語(yǔ)言規(guī)則而已,與IL已經(jīng)沒(méi)有任何相關(guān)性了。上層語(yǔ)言無(wú)論是C#還是VB,甚至是Java(J#)均只適應(yīng)編程人員的一個(gè)策略,與整個(gè)構(gòu)造沒(méi)有多大的相關(guān)性。
.net的最終目的就是讓不同的語(yǔ)言編程人員能協(xié)同工作,那么語(yǔ)言在其中的區(qū)別沒(méi)有多大了,所有的運(yùn)行核心都是由.net完成的,沒(méi)有必須依賴于.net。這是沒(méi)有任何疑問(wèn)的。
vb.net就是.net,只是表示用VB語(yǔ)言人的稱呼,用C#的則稱其為C#.net,但不管是哪種,它是無(wú)法脫離.net的。
VB.net
相對(duì)VB出現(xiàn)巨大變化的是語(yǔ)意,從運(yùn)行于基于COM的deterministic,
reference-counted的引擎之上的編程環(huán)境,轉(zhuǎn)變?yōu)槿婷嫦驅(qū)ο蟮幕?NET
Framework的語(yǔ)言。.NET
Framework包括了CLR(使用通用垃圾收集機(jī)制和JIT編譯引擎的虛擬機(jī))和大量的類庫(kù)。VB開(kāi)發(fā)者進(jìn)入VB.NET要面對(duì)新增的大量類庫(kù)的問(wèn)題。
上述變化表明了許多在運(yùn)行及維護(hù)相關(guān)優(yōu)化事宜下面的假定,一些VB6函數(shù)和庫(kù)不再存在而其它的仍然可用,但是比不上.NET語(yǔ)言中自帶的可替換的函數(shù)和庫(kù)來(lái)得高效。即使它們可被編譯,但大多從VB6轉(zhuǎn)換而來(lái)的應(yīng)用將需要一定程度上的重構(gòu)(refactoring),以全面利用新語(yǔ)言的優(yōu)點(diǎn)。在有關(guān)句法、應(yīng)用調(diào)試、部署和術(shù)語(yǔ)等方面的變化,有大量的文檔可以參考。