C C 是程式設計師必須掌握的語言嗎?

2021-04-02 11:32:41 字數 2916 閱讀 4414

滾 滾長江東逝水,浪花淘盡英雄。雖說是個人英雄的時代已經成為過去,但我們仍然不能對這樣的榜樣們有所忘懷,他們是wps求伯君、ccdos嚴援朝、 2.13吳曉軍、四通利方王志東、cced朱崇君、ucdos鮑嶽橋等。因為他們不僅是成名的優秀程式設計師,也不僅是在寫文章時所必須想到的人物,更主要的 是他們激盪了很多批程式設計師的程式設計熱情,堅定了學會彙編和c就能走天下的決心和勇氣,他們代表著以往中國軟體業的輝煌。

多年來,我們一直就這樣追隨著,也不曾懷疑過有什麼不對的地方。即使在dos已成為過去,windows和internet獨霸天下的今天,我們也不曾懷疑過。

我們能懷疑嗎?我們眼見的例項太多了。我們不是看到linux等作業系統和許多應用程式的核心都是用c來編制的嗎?即使在高校的計算機或非計算機專業中, c/c++程式設計課程的廣泛開設不也是乙個極好的證明嗎?norton utility 首席設計師enrique salem不是也認為"每個人都應當使用c++"嗎?

難道還有什麼懷疑嗎?

誠然,我們不能否認c/c++語言的超凡魅力。然而我們不禁要設問,在windows流行的今天,用windows c編制出介面獨特、功能強大的應用程式,你能嗎?即使能,你需要多少時間?

在有許多程式開發工具可供選擇的今天,強調"c/c++是程式程式設計師所必須掌握的語言"難道就沒有人真的敢站出來提出質疑嗎?

其實,在網路一統天下的今天,任何應用程式都必須經過網路的驗證。誰的軟體好用,誰就會被認可。為了能達到這樣的目標,許多windows程式設計師都選擇了 簡單易學、能快速有效地開發的visual basic、dephi等工具。e_book電子閱讀器就是其中一例,它是李曉東用vb設計的。

如果這顯得太過蒼白無力的話,那麼讓我們先來看看c語言從過去到現在的發展歷程,看看它為什麼這麼發展。

眾所周知,c語言是在70年代發展的語言,由於當時人們設想一種集低階語言和高階語言優點於一身的語言,於是c語言就誕生。基於它的簡結、緊湊、方便和靈活,它很快就成為國際上廣泛流行的語言。

然而,c語言終究是面向過程的語言,資料和處理資料的程式是分離的。當對某段程式進行了修改或刪除時,整個程式中所有與其相關的部分都要進行相應的修改, 從而程式**的維護比較困難。為了避免這種情況的發生,在c的基礎上中引用了物件導向的設計方法。它是將資料及處理資料的相應函式"封裝"到乙個類中,而 使用類資料變數則稱為物件。在乙個物件內,只有屬於該物件的函式才可以訪問該物件的資料。這樣,其他函式就不會無意中破壞它的內容,從而達到保護和隱藏數 據的效果。這就是c++。當然,物件導向的c++還支援多重繼承、模板、操作符過載、內聯函式定義、預處理、巨集、全域性靜態類變數、巢狀類定義等等。

c++太複雜了,任何乙個使用c++開發者的企業必將付出更多的成本,因為優秀的c++程式設計師是少而又少。基於軟體企業化的需要,人們很自然地需要一種簡 單易用、物件導向、安全靈活的"新一代windows服務"(next generation windows services,簡寫為ngws)應用程式的語言,於是c#出現了。它全方位簡化了c++的功能,使其具有c++所沒有的簡單易學的優勢。它既沒有c+ +"悲劇性"的指標概念,也沒有類似"::"、"."和"->"的"愚蠢"操作。

因此我們也可以說,c#才是程式設計師們所必須掌握的語言。但是,我們不能忽視這一點,語言總歸是程式設計師的工具,誰具有簡單易用、支援最新技術並能快速有效地進行軟體開發,誰就是程式設計師的工具。

如果上述的結論還不能接受的話,那麼讓我們看看現在c++程式設計師的窘境吧!

就目前而言,選擇c++就意味著選擇visual c++,而不c++ builder。這是c++程式設計師第一件讓人頭痛的事。因為vc與windows 98/nt同出一爐,相同功能的visual c++應用程式編譯後,其大小要比c++ builder小得多。不僅如此,其穩定性和完善程式要比c++ builder要強得多。

但是"visual c++"這個名字曾誤導了很多人,他們認為自己買了一套完全可視的程式設計系統,類似於visual basic,並在剛開始的幾天總這樣幻想。然而不久,人們認識到他們必須實際編寫和閱讀c++**。雖然visual c++嚮導可以節約時間和提高正確性,但程式設計師必須理解嚮導所產生的**,最主要的,還必須理解microsoft foundation class(mfc) library的結構和windows作業系統的內部工作方式。許多c/c++的dos平台的程式設計師把這種工作方式評價為"枯燥且艱深晦澀"的過程。儘管 新版本的visual c++6.0提供了控制台應用程式型別,使dos程式設計師能方便地進入mfc應用程式的開發,但仍然不能從根本上改變上述弊端。

選擇了visual c++,就必然選擇mfc,一種程式結構,一種程式設計風格。但由於mfc是owl同時代的產物,已經落後於vcl乙個時代了。從開發出基於atl的wtl可以反襯出mfc的不足。這恐怕是visual c++程式設計師最窘的地方。

但我們暫且不提mfc過時的尷尬,單是稍稍地改變一下應用程式的外觀,visual c++已是力不從心了。例如,想要改變控制項的字型和背景,你得重新生成乙個類,而vb只需更改一下屬性。從visual c++介面設計的**的火爆可見一斑。

不僅如此,visual c++程式設計師也時常感到另外一種尷尬,乙個小小的bmp、jpg顯示,在visual basic中輕而易舉的事件,到了vc居然需要那麼多的**,而且在資料庫應用程式的開發中還常發生許多一些細微的錯誤,令程式設計師們大為惱火。更為甚者, 如果有人還想用visual c++編寫internet/intranet程式的話,那簡直就是自尋煩惱。

雖然,乙個優秀visual c++程式的薪水要比其他程式設計師高。但是,他所花費的精力不是其他程式設計師能比擬的,他不僅需要承擔高昂的培訓費,而且還要承擔90%不成功的概率。這恐怕是想成為visual c++程式設計師的人最苦惱的事。

當然,我們不是勸你放棄使用c/c++語言,相反還十分支援。因為使用c/c++編寫的程式結構和演算法能被更多人接受,畢竟c影響了整整20個年頭。但是時過今天,我們還能靠它來"謀生"嗎?

相信你已經有了自己的答案。當然,我們之所以跳出來,是希望程式設計師們不單是在這個方面去思考,更主要的是:在我們國家軟體發展浪潮到來的今天,我們不能再 盲從,我們應該關注軟體產業、關注網際網路產業、關注資訊產業。我們也應該有自己的歸宿,難道印度軟體大國給我們的啟示還不夠多嗎?

C C 是程式設計師必須掌握的語言嗎?

滾滾長江東逝水,浪花淘盡英雄。雖說是個人英雄的時代已經成為過去,但我們仍然不能對這樣的榜樣們有所忘懷,他們是wps求伯君 ccdos嚴援朝 2.13吳曉軍 四通利方王志東 cced朱崇君 ucdos鮑嶽橋等。因為他們不僅是成名的優秀程式設計師,也不僅是在寫文章時所必須想到的人物,更主要的是他們激盪了...

程式設計師必須要掌握的語言

在有許多程式開發工具可供選擇的今天,強調 c c 是程式設計師所必須掌握的語言 難道就沒有人真的敢站出來提出質疑嗎?下面就由卓躍教育為您做乙個介紹 誠然,我們不能否認c c 語言的超凡魅力。然而我們不禁要設問,在windows流行的今天,用windowsc編制出介面獨特 功能強大的應用程式,你能嗎?...

程式設計師必須掌握的linux知識

4 重定向 管道 5 標準輸出 標準錯誤 6 使用 遮蔽乙個特殊字元的含義 7 正規表示式 二 熟練掌握vim編輯器。三 liunx環境下shell指令碼 perl指令碼的編寫 為了對網上伺服器應用進行管理,通常需要編寫一些指令碼。指令碼的編寫重點掌握下面幾點 1 理解雙引號 單引號 反引號的含義。...