人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開發(fā)教程 > 詳細頁面

C++之父Bjarne談C++在2005年

C++之父Bjarne談C++在2005年

更新時間:2022-07-06 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

現(xiàn)在我們?nèi)匀缓茈y估計C++程序員的數(shù)量,但在2003年,IDC報告說有超過300萬的全職C++程序員,這個數(shù)據(jù)還是比較可信的。雖然我不能夠精確地計算,但是我所擁有的所有指標都顯示,C++在經(jīng)過前十年(1985-1994)的爆炸性增長之后,后十年(1995-2004)其使用人數(shù)一直在穩(wěn)定地增長。我還沒有經(jīng)歷過其增長停止的時期。我猜想,雖然面對競爭產(chǎn)品的有力宣傳和肆無忌憚的促銷活動,它仍然穩(wěn)定增長的主要原因在于:在這個時期中C++語言保持著穩(wěn)定性(stability)。在這些年頭中,這種語言的實現(xiàn)有了很大的改善,其類庫的數(shù)量、質(zhì)量和復(fù)雜程度都有所增長,同時我們對如何使用C++的理解也進一步深入了。但是,1995年D&E中描述的這種語言我們現(xiàn)在仍然在使用。標準的C++擁有足夠的特性,它能夠適應(yīng)十年中編程技術(shù)和應(yīng)用程序的增長,其穩(wěn)定性也允許它實現(xiàn)跟上潮流。

  那么,這些C++程序員到底在做什么事情呢?他們在編寫哪種類型的應(yīng)用程序?他們使用了哪種編程風(fēng)格?我不知道,誰也不會知道。同樣,與C++程序員太多了以至于無法估算類似,不同的應(yīng)用程序領(lǐng)域也太多了,某個人需要掌握的編程風(fēng)格也太多了。有時候我們會聽到別人說"C++應(yīng)該這樣使用"--這樣的表述一般都是癡心妄想,它們來自于非常有限的經(jīng)驗。我們在與很多人一起玩"盲人與大象"的游戲。有些人已經(jīng)閱讀了一百多萬行代碼,編寫了成百上千行C++代碼,讀過C-vu、C/C++ Users Journal等雜志中的所有文章,讀過所有優(yōu)良的C++書籍和許多劣質(zhì)的書籍,讀過所有的與C++相關(guān)的論文,并在C++新聞組中"居住"了很多年。這種人很少,即使是這樣,他們也只碰到了其表面。這種人一般都是最后發(fā)表簡單概括的。實際上,我聽到的最簡潔和自信的概括(包括正面的和反面的)都來自于那些幾乎沒有C++經(jīng)驗的人--無知是福。

  當我試圖理解如何使用C++的時候,我首先考慮下面兩個方面:

  ·應(yīng)用領(lǐng)域

  ·程序員(設(shè)計師、軟件產(chǎn)品公司等)的成熟度

  編寫實時(嵌入式)系統(tǒng)的程序員與編寫專用的數(shù)據(jù)庫業(yè)務(wù)程序的程序員所關(guān)心的內(nèi)容是不同的,他們與編寫高能物理(high-energy physics)應(yīng)用程序的程序員所處的環(huán)境也完全不同。我發(fā)現(xiàn)聽取新應(yīng)用領(lǐng)域的程序員的想法并向他們學(xué)習(xí)是有好處的。

  很難存在某種東西跨越所有應(yīng)用領(lǐng)域都有意義。但是可以說某種東西(跨所有應(yīng)用領(lǐng)域)是成熟的。從高層次的角度來看,理想的編程語言可以表達為:

  1. 在代碼中直接地表達概念

  2. 在代碼中直接地表達概念之間的關(guān)系

  3. 在獨立的代碼中表達獨立的概念

  4. 自由地組合那些表達概念的代碼,無論這種組合是否有意義

  此處的"概念(concept)"與"想法(idea)"的意思大致相同,并且可以參考我們所命名的任何東西、在設(shè)計時出現(xiàn)在黑板上的任何東西、在我們的課本中描述的任何東西,等等。

  我"測評"成熟度主要基于人們?nèi)绾伟堰@些想法應(yīng)用到產(chǎn)品代碼(也就是受現(xiàn)實條件約束的代碼)中。如果某些人使用C++的原因主要是把它作為"更好的C",那么他們在(上述的四條中的)第一條就遇到了失敗--他們就不能使用類、類層次和參數(shù)化(模板)來直接地表達想法以及想法之間的關(guān)系。如果某些人堅持把C++僅僅看作是一種面向?qū)ο蟮恼Z言,那么他們在第三和第四條會遇到失敗--他們會構(gòu)造厚重的層次,通過一些不適合的依據(jù)把無關(guān)的概念綁定在一起,排除內(nèi)建類型和簡單類。

  這意味著,即使語言不作進一步改變,也有很多方面有待改善。通過簡單地使用自己計算機上已經(jīng)安裝的、作為ISO標準C++一部分的工具,大多數(shù)人就可以改善他們的編程效率、減少錯誤率、提高運行時性能。如果你沒有試用過STL,那就試試吧。也許它不能嚴格地滿足你的需求,但是它是標準的,并且演示了 "現(xiàn)代的C++"中的很多關(guān)鍵技術(shù),你可以使用這些技術(shù)來解決問題。我曾經(jīng)指出的教育的題現(xiàn)在更糟糕了:編程教育在很大的程度上無法跟上軟件生產(chǎn)方面的變革。由于我最初編寫D&E,我成為了一個專家,在一定程度上助長了這種倒退趨勢。

  那么這些C++程序員到底在做什么呢?這是你可以想到的:"普通的PC業(yè)務(wù)應(yīng)用程序"、嵌入式系統(tǒng)、電子商務(wù)、游戲、科學(xué)計算、網(wǎng)絡(luò)軟件、操作系統(tǒng)、設(shè)備驅(qū)動程序、移動電話等等。在繼續(xù)之前,我建議你看看我持續(xù)維護的一個小列表http://www.research.att.com/~bs/applications.html。我個人特別喜歡"冒險和與眾不同的"應(yīng)用程序,它們擁有極端的性能和/或可靠性需求,例如JPL火星漫步者自動驅(qū)動系統(tǒng)、MAN B&W巨型船用柴油機引擎控制系統(tǒng)、高度分布式系統(tǒng)(例如多玩家游戲)的ICE下層構(gòu)造。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 于田县| 云龙县| 梁河县| 天津市| 卢氏县| 博湖县| 巴林左旗| 吉水县| 赤水市| 石屏县| 罗定市| 汶上县| 金塔县| 津市市| 鹤岗市| 泾川县| 房产| 新密市| 高陵县| 苏州市| 白朗县| 萨嘎县| 师宗县| 河北省| 洛阳市| 武义县| 信丰县| 政和县| 柳江县| 南昌市| 延吉市| 项城市| 远安县| 新民市| 扎鲁特旗| 黔西县| 临邑县| 南开区| 鄢陵县| 靖州| 吉首市|