對(duì)Visual C++優(yōu)點(diǎn)說(shuō)明介紹
對(duì)于Visual C++優(yōu)點(diǎn)的定義,在這里說(shuō)一下自己的看法,Visual C++已成為專業(yè)程序員進(jìn)行軟件開發(fā)的***工具,所以實(shí)際中,更多的是以Visual C++6.0為平臺(tái), 這些組件通過(guò)一個(gè)名為Developer Studio的組件集成為和諧的開發(fā)環(huán)境。
在有許多程序開發(fā)工具可供選擇的今天,強(qiáng)調(diào)"C/C++是程序程序員所必須掌握的語(yǔ)言"難道就沒有人真的敢站出來(lái)提出質(zhì)疑嗎? 其實(shí),在網(wǎng)絡(luò)一統(tǒng)天下的今天,任何應(yīng)用程序都必須經(jīng)過(guò)網(wǎng)絡(luò)的驗(yàn)證。誰(shuí)的軟件好用,誰(shuí)就會(huì)被認(rèn)可。
為了能達(dá)到這樣的目標(biāo),許多Windows程序員都選擇了簡(jiǎn)單易學(xué)、能快速有效地開發(fā)的Visual Basic、Dephi等工具。E_book電子閱讀器就是其中一例,它是李曉東用VB設(shè)計(jì)的。 如果這顯得太過(guò)蒼白無(wú)力的話,那么讓我們先來(lái)看看Visual C++,從過(guò)去到現(xiàn)在的發(fā)展歷程。
看看它為什么這么發(fā)展。眾所周知,C語(yǔ)言是在70年代發(fā)展的語(yǔ)言,由于當(dāng)時(shí)人們?cè)O(shè)想一種集低級(jí)語(yǔ)言和高級(jí)語(yǔ)言優(yōu)點(diǎn)于一身的語(yǔ)言,于是C語(yǔ)言就誕生。基于它的簡(jiǎn)結(jié)、緊湊、方便和靈活,它很快就成為國(guó)際上廣泛流行的語(yǔ)言。#t#
然而,C語(yǔ)言終究是面向過(guò)程的語(yǔ)言,數(shù)據(jù)和處理數(shù)據(jù)的程序是分離的。當(dāng)對(duì)某段程序進(jìn)行了修改或刪除時(shí),整個(gè)程序中所有與其相關(guān)的部分都要進(jìn)行相應(yīng)的修改,從而程序代碼的維護(hù)比較困難。為了避免這種情況的發(fā)生。
在C的基礎(chǔ)上中引用了面向?qū)ο蟮脑O(shè)計(jì)方法。它是將數(shù)據(jù)及處理數(shù)據(jù)的相應(yīng)函數(shù)"封裝"到一個(gè)類中,而使用類數(shù)據(jù)變量則稱為對(duì)象。在一個(gè)對(duì)象內(nèi),只有屬于該對(duì)象的函數(shù)才可以存取該對(duì)象的數(shù)據(jù)。這樣,其他函數(shù)就不會(huì)無(wú)意中破壞它的內(nèi)容,從而達(dá)到保護(hù)和隱藏?cái)?shù)據(jù)的效果。這就是C++。當(dāng)然,面向?qū)ο蟮腃++還支持多重繼承、模板、操作符重載、內(nèi)聯(lián)函數(shù)定義、預(yù)處理、宏、全局靜態(tài)類變量、嵌套類定義等等。
C++太復(fù)雜了,任何一個(gè)使用C++開發(fā)者的企業(yè)必將付出更多的成本,因?yàn)閮?yōu)秀的C++程序員是少而又少?;谲浖髽I(yè)化的需要,人們很自然地需要一種簡(jiǎn)單易用、面向?qū)ο?、安全靈活的"新一代Windows服務(wù)"(Next Generation Windows Services,簡(jiǎn)寫為NGWS)應(yīng)用程序的語(yǔ)言,于是C#出現(xiàn)了。它全方位簡(jiǎn)化了C++的功能,使其具有C++所沒有的簡(jiǎn)單易學(xué)的優(yōu)勢(shì)。它既沒有C++"悲劇性"的指針概念,也沒有類似"::"、"."和"->"的"愚蠢"操作。
因此我們也可以說(shuō),C#才是程序員們所必須掌握的語(yǔ)言。但是,我們不能忽視這一點(diǎn),語(yǔ)言總歸是程序員的工具,誰(shuí)具有簡(jiǎn)單易用、支持***技術(shù)并能快速有效地進(jìn)行軟件開發(fā),誰(shuí)就是程序員的工具。 如果上述的結(jié)論還不能接受的話,那么讓我們看看現(xiàn)在C++程序員的窘境吧!
就目前而言,選擇C++就意味著選擇Visual C++優(yōu)點(diǎn),而不C++ Builder。這是C++程序員***件讓人頭痛的事。因?yàn)閂C與Windows 98/NT同出一爐,相同功能的Visual C++應(yīng)用程序編譯后,其大小要比C++ Builder小得多。不僅如此,其穩(wěn)定性和完善程序要比C++ Builder要強(qiáng)得多。
但是"Visual C++"這個(gè)名字曾誤導(dǎo)了很多人,他們認(rèn)為自己買了一套完全可視的編程系統(tǒng),類似于Visual Basic,并在剛開始的幾天總這樣幻想。然而不久,人們認(rèn)識(shí)到他們必須實(shí)際編寫和閱讀C++代碼。雖然Visual C++優(yōu)點(diǎn)向?qū)Э梢怨?jié)約時(shí)間和提高正確性。
但程序員必須理解向?qū)a(chǎn)生的代碼,最主要的,還必須理解Microsoft Foundation Class(MFC) Library的結(jié)構(gòu)和Windows操作系統(tǒng)的內(nèi)部工作方式。許多C/C++的DOS平臺(tái)的程序員把這種工作方式評(píng)價(jià)為"枯燥且艱深晦澀"的過(guò)程。盡管新版本的Visual C++6.0提供了控制臺(tái)應(yīng)用程序類型,使DOS程序員能方便地進(jìn)入MFC應(yīng)用程序的開發(fā),但仍然不能從根本上改變上述弊端。
選擇了Visual C++,就必然選擇MFC,一種程序結(jié)構(gòu),一種編程風(fēng)格。但由于MFC是OWL同時(shí)代的產(chǎn)物,已經(jīng)落后于VCL一個(gè)時(shí)代了。從開發(fā)出基于ATL的WTL可以反襯出MFC的不足。這恐怕是Visual C++程序員最窘的地方。
但我們暫且不提MFC過(guò)時(shí)的尷尬,單是稍稍地改變一下應(yīng)用程序的外觀,Visual C++優(yōu)點(diǎn)已是力不從心了。例如,想要改變控件的字體和背景,你得重新生成一個(gè)類,而VB只需更改一下屬性。從Visual C++界面設(shè)計(jì)的網(wǎng)站的火爆可見一斑。
不僅如此,Visual C++程序員也時(shí)常感到另外一種尷尬,一個(gè)小小的BMP、JPG圖片顯示,在Visual Basic中輕而易舉的事件,到了VC居然需要那么多的代碼,而且在數(shù)據(jù)庫(kù)應(yīng)用程序的開發(fā)中還常發(fā)生許多一些細(xì)微的錯(cuò)誤,令程序員們大為惱火。更為甚者,如果有人還想用Visual C++編寫Internet/Intranet程序的話,那簡(jiǎn)直就是自尋煩惱。
雖然,一個(gè)優(yōu)秀Visual C++程序的薪水要比其他程序員高。但是,他所花費(fèi)的精力不是其他程序員能比擬的,他不僅需要承擔(dān)高昂的培訓(xùn)費(fèi),而且還要承擔(dān)90%不成功的概率。這恐怕是想成為Visual C++程序員的人最苦惱的事。