精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

解讀面向?qū)ο蟮某绦蛟O(shè)計(jì)(三)

開發(fā) 開發(fā)工具
本文介紹的是面向?qū)ο缶幊痰奈磥恚岢隽撕芏嘞敕āOM麑?duì)大家有幫助,一起來看。

接上一篇>>

接著來看OOP。OOP的未來在未來三年,程序員編寫代碼的方式會(huì)發(fā)生那些變化?

Stroustrup:在C++中,假如沒有合適的庫在背后支撐,完成任何重要的工作都可能是很復(fù)雜的。而一旦有了合適的庫,任何東西都可以被我們操控于股掌之間。因此,構(gòu)造和使用程序庫的重要性與日俱增。這也暗示我們,泛型程序設(shè)計(jì)(genericprogramming)將會(huì)越來越多地被運(yùn)用。只有通過GP,我們才能確保庫的通用性和高效率。我還預(yù)期在分布式計(jì)算和“組件(components)”應(yīng)用領(lǐng)域會(huì)出現(xiàn)喜人的增長。就大部分程序員而言,通過使用方便適用的程序庫,這些開發(fā)工作會(huì)變得簡單明了。

現(xiàn)在有一個(gè)趨勢,編譯器廠商試圖把其特有的“對(duì)象模型”和圖形界面(GUI)細(xì)節(jié)推銷給用戶。比如微軟的COM和Inprise的類屬性“properties”。對(duì)于用戶來說,這既不必要,也不情愿。我所希望看到的程序庫,應(yīng)該是用標(biāo)準(zhǔn)C++打造,界面靈活,值得信賴的程序庫。

通常,這些界面應(yīng)該是平臺(tái)無關(guān)的。C++的表達(dá)能力極強(qiáng),即使不使用大量的宏,也應(yīng)該足以達(dá)成這一要求。就算有些地方無法百分之百的遵守這一原則,也應(yīng)該將對(duì)于平臺(tái)和廠家的依賴性限制起來。這個(gè)目標(biāo)的完成情況,可以反映軟件工具產(chǎn)業(yè)對(duì)于應(yīng)用程序開發(fā)行業(yè)的關(guān)注程度。我懷疑目前對(duì)于那些獨(dú)立的、跨平臺(tái)廠商來說,并不存在相應(yīng)的市場。如果能夠建立這樣的市場,也許能夠促進(jìn)廠商們?yōu)榭蛻糇龀?ldquo;真正有用的”產(chǎn)品。

Lindholm:對(duì)于編寫代碼的開發(fā)者來說,主要的驅(qū)動(dòng)力量仍將是兩個(gè):網(wǎng)絡(luò)和分布式——也就是設(shè)計(jì)和開發(fā)非單機(jī)軟件的需求。大部分的應(yīng)用程序?qū)⒉粫?huì)是孤零零地運(yùn)行在單一設(shè)備上,而是運(yùn)用了類似EJB和JSP之類技術(shù)的,平臺(tái)無關(guān)的分布式程序。程序員們將不得不面對(duì)分布式計(jì)算的重重險(xiǎn)阻。這將對(duì)許多程序員所依賴的設(shè)計(jì)模式、技術(shù)和直覺構(gòu)成嚴(yán)峻的挑戰(zhàn)。這是選擇編程語言之前必須認(rèn)識(shí)到的,盡管不同語言的設(shè)計(jì)特性可能促進(jìn)或者阻礙這一轉(zhuǎn)化。

在網(wǎng)絡(luò)應(yīng)用的增長中,一個(gè)很重要的部分是小型移動(dòng)設(shè)備和特殊Internet設(shè)備的爆炸性增長。這些設(shè)備各有各的操作系統(tǒng),或者只在某種特定的設(shè)備領(lǐng)域內(nèi)有共同的操作系統(tǒng)。我們現(xiàn)在還可以一一列舉出這些設(shè)備——家庭接入設(shè)備、蜂窩電話、電子報(bào)紙、PDA、自動(dòng)網(wǎng)絡(luò)設(shè)備等等。但是這些設(shè)備領(lǐng)域的數(shù)量和深入程度將會(huì)很快變得難以估量。我們都知道這個(gè)市場大得驚人,PC的興起與之相比不過小菜一碟。因此在這些設(shè)備的應(yīng)用程序市場上,競爭將會(huì)相當(dāng)殘酷。獲勝的重要手段之一,就是盡快進(jìn)入市場。開發(fā)人員需要優(yōu)秀的工具,迅速高效地撰寫和調(diào)試他們的軟件。平臺(tái)無關(guān)性也是制勝秘訣之一,它使得程序員能夠開發(fā)出支持多種設(shè)備平臺(tái)的軟件。

我預(yù)期的另一個(gè)變化是,我們對(duì)于代碼(Java)和數(shù)據(jù)(XML)協(xié)同型應(yīng)用程序的開發(fā)能力將會(huì)不斷提高。這種協(xié)同是開發(fā)強(qiáng)大應(yīng)用程序的核心目標(biāo)之一。我們從XML的迅速流行和ebXML規(guī)范的進(jìn)展中,已經(jīng)看到了這個(gè)趨勢。ebXML是一個(gè)針對(duì)電子商務(wù)和國際貿(mào)易的,基于XML的開放式基礎(chǔ)構(gòu)架,由聯(lián)合國貿(mào)易促進(jìn)和電子商務(wù)中心(UN/CEFACT)與結(jié)構(gòu)性信息標(biāo)準(zhǔn)推進(jìn)組織(OASIS)共同開發(fā)。

我們能否期望出現(xiàn)一個(gè)真正的面向組件(component-oriented)的語言?它的創(chuàng)造者會(huì)是誰呢?

Stroustrup:我懷疑,這個(gè)領(lǐng)域中之所以缺乏成果,正是因?yàn)槿藗?mdash;—主要是那些非程序員們——對(duì)“組件”這個(gè)意義含糊的字眼寄予了太多的期望。這些人士夢想,有朝一日,組件會(huì)以某種方式把程序員趕出歷史舞臺(tái)。以后那些稱職的“設(shè)計(jì)員”只需利用預(yù)先調(diào)整好的組件,把鼠標(biāo)拖一拖放一放,就把系統(tǒng)組合出來。對(duì)于軟件工具廠商來說,這種想法還有另一層意義,他們認(rèn)為,到時(shí)候只有他們才保留有必要的技術(shù),有能力編寫這樣的組件。

這種想法有一個(gè)最基本的謬誤:這種組件很難獲得廣泛歡迎。一個(gè)單獨(dú)的組件或框架(framework),如果能夠滿足一個(gè)應(yīng)用程序或者一個(gè)產(chǎn)業(yè)領(lǐng)域?qū)λ岢龅拇蟛糠忠蟮脑挘瑢?duì)于其制造者來說就是劃算的產(chǎn)品,而且技術(shù)上也不是很困難。可是該產(chǎn)業(yè)內(nèi)的幾個(gè)競爭者很快就會(huì)發(fā)現(xiàn),如果所有人都采用這些組件,那么彼此之間的產(chǎn)品就會(huì)變得天下大同,沒什么區(qū)別,他們將淪為簡單的辦事員,主要利潤都將鉆進(jìn)那些組件/框架供應(yīng)商的腰包里!

小“組件”很有用,不過產(chǎn)生不了預(yù)期的杠桿效應(yīng)。中型的、更通用的組件非常有用,但是構(gòu)造時(shí)需要非同尋常的彈性。

在C++中,我們綜合運(yùn)用不同共享形式的類體系(classhierarchies),以及使用templates精心打造的接口,在這方面取得了一定的進(jìn)展。我期待在這個(gè)領(lǐng)域取得一些有趣和有用的成果,不過我認(rèn)為這種成果很可能是一種新的C++程序設(shè)計(jì)風(fēng)格,而不是一種新的語言。

Lindholm:編寫面向組件的應(yīng)用程序,好像更多的是個(gè)投資、設(shè)計(jì)和程序員管理方面的問題,而不是一個(gè)編程語言問題。當(dāng)然某些語言在這方面具有先天優(yōu)勢,不過如果說有什么魔術(shù)般的新語言能夠大大簡化組件的編寫難度,那純粹是一種誤導(dǎo)。

微軟已經(jīng)將全部賭注押在C#上,其他語言何去何從?

Stroustrup:C++在下一個(gè)十年里仍然將是一種主流語言。面對(duì)新的挑戰(zhàn),它會(huì)奮起應(yīng)對(duì)。一個(gè)創(chuàng)造了那么多出色系統(tǒng)的語言,絕不會(huì)“坐視落花流水春去也”。

我希望微軟認(rèn)識(shí)到,它在C++(我指的是ISO標(biāo)準(zhǔn)C++)上有著巨大的利益,C++是它與IT世界內(nèi)其他人之間的一座橋梁,是構(gòu)造大型系統(tǒng)和嵌入式系統(tǒng)的有效工具,也是滿足高性能需求的利器。其他語言,似乎更注重那些四平八穩(wěn)的商用程序。

競爭

C#會(huì)不會(huì)獲得廣泛的接受,并且擠掉其他的語言?

Lindholm:通常,一種語言既不會(huì)從別的語言那里獲利,也不會(huì)被擠掉。那些堅(jiān)定的Fortran程序員不還用著Fortran嗎?對(duì)于個(gè)人來說,語言的選擇當(dāng)然因時(shí)而異,但就整體而言,語言的種類只會(huì)遞增,也就是說,它們之間的關(guān)系是“有你有我”而不是“有你沒我”。

對(duì)于一個(gè)新語言的接受程度,往往取決于其能力所及。Java技術(shù)被迅速接受,原因是多方面的,Internet和WorldWideWeb接口,在其他技術(shù)面前的挫折感,對(duì)于Java技術(shù)發(fā)展方向的全面影響能力,都是原因。另一個(gè)重要的原因是Java獨(dú)立于廠商,這意味著在兼容產(chǎn)品面前可以從容選擇。

C#是否會(huì)獲得廣泛接受?視情況而定。總的來說,那些對(duì)于平臺(tái)無關(guān)性和廠商無關(guān)性漠不關(guān)心的程序員,可能會(huì)喜歡C#。那些跟微軟平臺(tái)捆在一起人當(dāng)然可能想要尋找VB和VC的一個(gè)出色的替代品。但是對(duì)于程序跨平臺(tái)執(zhí)行能力特別關(guān)注的程序員,將會(huì)堅(jiān)守Java之類的語言。這種能力對(duì)于多重訪問設(shè)備(multipleaccessdevices)和分布式計(jì)算模型至關(guān)重要,而Java語言提供了一個(gè)標(biāo)準(zhǔn)的、獨(dú)立于廠商運(yùn)行時(shí)環(huán)境。

Stroustrup:C#的流行程度幾乎完全取決于微軟投入的資金多少。看上去C#的興起肯定會(huì)犧牲掉其他一些語言的利益,但是事實(shí)上未必如此。Java的蓬勃發(fā)展并沒有給C++帶來衰敗。C++的應(yīng)用仍然在穩(wěn)定增長(當(dāng)然,已經(jīng)不是爆炸性的增長了)。也許其他的語言也還能獲得自己的一席之地。

不過,我實(shí)在看不出有什么必要再發(fā)明一種新的專有語言。特別是微軟,既生VB,何需C#?

不同OOP語言各有什么優(yōu)勢和劣勢?

Stroustrup:C++的優(yōu)點(diǎn)自始至終都是這么幾條:靈活、高效,而且并非專有語言。現(xiàn)在ISOC++標(biāo)準(zhǔn)的出現(xiàn),鞏固了最后一點(diǎn)。

我認(rèn)為C++的高效是它最基本的優(yōu)點(diǎn)。這種高效來自于其特有的數(shù)據(jù)和計(jì)算模型,較之Java和C#,這種模型更加貼近機(jī)器。不過,哪些程序才真正地渴望這么高的效率?這是個(gè)問題。我認(rèn)為這類程序非常多。人們對(duì)于計(jì)算機(jī)的期望,永遠(yuǎn)都超越硬件科技的發(fā)展速度。很顯然,Java和C#的設(shè)計(jì)者的想法不同,他們認(rèn)為,在很多地方效率問題無關(guān)緊要。

C++主要的缺點(diǎn),歸罪于糟糕的教育(是那些始終認(rèn)為C++是個(gè)純粹面向?qū)ο笳Z言的人,和那些把C++當(dāng)成C語言變體的人導(dǎo)致了這種情況),歸罪于不同平臺(tái)上的不一致性,歸罪于不完整、不標(biāo)準(zhǔn)的編譯器實(shí)現(xiàn),歸罪于平臺(tái)無關(guān)的系統(tǒng)級(jí)程序庫的缺少。

這些問題歸于一點(diǎn),就是缺乏一個(gè)卓越的廠商,能夠滿足整個(gè)C++社區(qū)的需求,勇于投入大量的資金開發(fā)必要的程序庫。

Lindholm:Java技術(shù)的成功,是因?yàn)樗诤线m的時(shí)間,出現(xiàn)在合適的地點(diǎn),而且合理地選擇了語言和計(jì)算平臺(tái)的支持目標(biāo)。Java并不是在所有場合都優(yōu)于其他OOP語言,但是對(duì)于出現(xiàn)的新問題能夠解決得很出色。它面向Internet計(jì)算環(huán)境,避免了C++中晦澀的結(jié)構(gòu),成功翻越了繼承機(jī)制的惱人問題。垃圾收集機(jī)制顯著地提高了生產(chǎn)率,降低了復(fù)雜度。

在網(wǎng)絡(luò)背景下使用虛擬機(jī),以及有關(guān)安全性和動(dòng)態(tài)加載的一系列設(shè)計(jì)選擇,迎合了正在出現(xiàn)的需求和愿望。這些特性使Java不僅成為現(xiàn)有程序員的新武器,而且也為新的程序員創(chuàng)造了繁榮的市場空間。

此外,Java擁有一個(gè)標(biāo)準(zhǔn)化的、二進(jìn)制形式的類庫,提供了必要的(當(dāng)然并非充分的)平臺(tái)與廠商無關(guān)性。平臺(tái)與廠商無關(guān)性要求一項(xiàng)技術(shù)必須有清晰的規(guī)范,摒棄那些阻礙二進(jìn)制標(biāo)準(zhǔn)實(shí)施的特性。C++雖然有一個(gè)ISO標(biāo)準(zhǔn),但其實(shí)甚至對(duì)于相同系統(tǒng)與相同指令體系的各個(gè)平臺(tái),也提不出一個(gè)實(shí)用的、各版本兼容的二進(jìn)制標(biāo)準(zhǔn)。

歷史上很多使用虛擬機(jī)的語言飽受責(zé)難,是因?yàn)槠洳粔虺錾男阅軉栴},而這要?dú)w過于緩慢的解釋器和糟糕的垃圾收集器。Java的早期實(shí)現(xiàn)也因?yàn)橥瑯拥膯栴}受到嚴(yán)厲的批評(píng)。但是自那時(shí)起,業(yè)界向新的虛擬機(jī)實(shí)現(xiàn)技術(shù)投入了大量資金,取得了顯著的效果,如今在大部分場合,Java的性能跟常規(guī)的靜態(tài)編譯語言相比毫不遜色。這使得程序員在獲得平臺(tái)和廠商無關(guān)性的同時(shí),也不必付出性能上的代價(jià)。

C++并沒有強(qiáng)制使用面向?qū)ο蠓椒ǎ虼藶榱司帉懗錾拿嫦驅(qū)ο蟠a,就要求程序員們有相當(dāng)強(qiáng)的紀(jì)律性。很多公司就是因?yàn)檫@個(gè)原因放棄了C++。作為語言,Java的一個(gè)突出的優(yōu)點(diǎn)就是強(qiáng)制面向?qū)ο蠓椒ǎ辉试S非面向?qū)ο蟮慕Y(jié)構(gòu)。

C#介于C++和Java之間,腳踏兩只船,因此既不夠安全,又失之復(fù)雜。

對(duì)于公司來說,采用新的語言要付出巨大代價(jià)。雇不到好的程序員(沒人熟悉這種新語言),培訓(xùn)費(fèi)用高得驚人,學(xué)習(xí)過程中生產(chǎn)率和產(chǎn)品質(zhì)量下降,多年的經(jīng)驗(yàn)隨風(fēng)消逝,等等。一種語言如何克服這些障礙?

Lindholm:說得很對(duì),采用新東西確實(shí)常常開銷巨大。不過問題是:這個(gè)新東西是否能夠節(jié)省更多的開支,或者提供巨大的改進(jìn),獲取合理的回報(bào)?很多公司發(fā)現(xiàn),轉(zhuǎn)向Java技術(shù)不論在開發(fā)的后端(盡快進(jìn)入市場、快速迭代開發(fā)、維護(hù)簡單性)還是前端(跨平臺(tái)發(fā)布,適用范圍從低端設(shè)備到高端服務(wù)器的技術(shù),安全性),都能節(jié)省大筆的開銷。

對(duì)于新事物的接納,常常是在痛楚的壓力之下。很大程度上,這正是Java所經(jīng)歷的。Java的產(chǎn)生,是對(duì)當(dāng)時(shí)很多系統(tǒng)的缺陷所做出的反應(yīng)。Java技術(shù)通過下面的手段減輕了開發(fā)者的痛楚:1)顧及了網(wǎng)絡(luò)計(jì)算方面的需求,是應(yīng)運(yùn)而生。2)在技術(shù)能力的抉擇上,保持良好的品位,顧及了大眾的心理。3)采用適度強(qiáng)制性策略推行設(shè)計(jì)決定。此外,Java技術(shù)已經(jīng)成為大學(xué)教學(xué)中的主流,這同樣保證了Java開發(fā)者隊(duì)伍的不斷壯大。

但是最重要的一點(diǎn)是,再?zèng)]有另一種程序設(shè)計(jì)技術(shù),能夠像Java那樣允許程序員開發(fā)基于Internet的不同平臺(tái)之上的應(yīng)用程序。Java平臺(tái)在這方面的杰出表現(xiàn),已經(jīng)被大量的實(shí)例證明。Java已經(jīng)成為Internet上的缺省應(yīng)用程序平臺(tái),JavaAPIs也成為Internet應(yīng)用程序開發(fā)的天然平臺(tái)。

Stroustrup:微軟和Sun把大筆的金錢扔在Java、VB和C#中,并不是因?yàn)樗夹陌l(fā)現(xiàn),也不是因?yàn)樗麄冋娴南嘈胚@些語言能夠帶給程序員更美好的生活,而是利益使然。

有一個(gè)說法,認(rèn)為軟件工具廠商如果能夠把應(yīng)用程序開發(fā)者的專業(yè)技術(shù)任務(wù)負(fù)擔(dān)起來,將獲取巨大的經(jīng)濟(jì)利益。我對(duì)其背后的經(jīng)濟(jì)分析頗為懷疑,我認(rèn)為這很難成為現(xiàn)實(shí),特別是當(dāng)應(yīng)用程序開發(fā)者使用開放的、標(biāo)準(zhǔn)化的工具時(shí),他們可以有多種選擇,從而使上面的想法更加不可能。

多年以前,C++就已經(jīng)具有泛型能力(也就是templates和STL),有運(yùn)算符重載,有枚舉類型?我們會(huì)不會(huì)在Java的未來版本中看到這些特性?Java是不是應(yīng)該納入這些特性呢

Strousturp:從1988-89年起,C++就已經(jīng)有了templates。但是我們花了不少時(shí)間來了解如何最好地運(yùn)用這個(gè)工具,早期各廠家對(duì)于template的支持在品質(zhì)上也有很大的差異。有些編譯器廠商動(dòng)作遲緩,至少有一個(gè)主要的編譯器廠商(好像是指微軟,微軟在VisualC++4.0才開始支持template,在此之前一直聲稱template是過于復(fù)雜而又沒什么用的技術(shù),時(shí)至今日,VisualC++對(duì)于template的支持在主流編譯器中都屬于最差的一檔——譯者注)暗中鼓勵(lì)聲名狼藉的反template宣傳,直到他們自己終于學(xué)會(huì)了這項(xiàng)技術(shù)為止。直到今天,對(duì)于template的支持在品質(zhì)上仍然有待改進(jìn)。

你上面提到的那些特性,我認(rèn)為Java(還有C#)應(yīng)該,也肯定會(huì)逐漸引入。那些對(duì)于程序員來說最有用的語言特性和概念,將會(huì)逐漸集中,成為各家主流語言的必然之選。也就是說,我認(rèn)為類似析構(gòu)函數(shù)和模板特殊化之類的機(jī)制,遠(yuǎn)遠(yuǎn)比枚舉等機(jī)制重要得多。

Lindholm:Java技術(shù)成功的原因之一,就是很清楚哪些不該做。我們得多問幾個(gè)為什么:這項(xiàng)特性是不是必不可少?增加它會(huì)帶來哪些開銷?運(yùn)算符重載是C++中一項(xiàng)極其強(qiáng)大的特性,但是它也大大增加了C++語言的復(fù)雜度,很多人都難以招架。Java在各種可能的權(quán)衡之中,做出了明智的抉擇,找到了能力與需求之間的完美平衡點(diǎn)。

當(dāng)然,Java也會(huì)發(fā)展,而且最重要的是,現(xiàn)在是開發(fā)者們在推動(dòng)發(fā)展。Java增加泛型能力這件事,很好地展示了Java是如何通過整個(gè)開發(fā)者社群的參與,在權(quán)衡中決定正確的平衡點(diǎn)。關(guān)于增加泛型類型(generictypes)的“Java規(guī)格申請”(JavaSpecificationRequest,JSR)已經(jīng)進(jìn)入JCP(JavaCommunityProcess)程序,而且已經(jīng)開發(fā)了很長一段時(shí)間(參見http://java.sun.com/aboutJava/communityprocess/之JSR-014)。現(xiàn)在,在JCP中,有超過80個(gè)JSRs正在討論中,這充分體現(xiàn)了整個(gè)體系對(duì)開發(fā)者的積極反饋和高度合作,這正是驅(qū)動(dòng)Java平臺(tái)不斷進(jìn)化的動(dòng)力。

發(fā)展vs.革新(Evolutionvs.Revolution)

C++是一種發(fā)展型的語言,Java和C#似乎更像是革新型語言(它們是從頭設(shè)計(jì)的)?什么時(shí)候,革新型的語言才是必需的呢?

Lindholm:Java技術(shù)并非憑空出世,反而更像是發(fā)展型的。Java所有的特性,在Java平臺(tái)推出之前,都至少已經(jīng)存在于另一種環(huán)境之中。Java的貢獻(xiàn)在于,在眾多的特性和權(quán)衡中,做出了合理的選擇,使得產(chǎn)品既實(shí)用,又優(yōu)雅。Java技術(shù)對(duì)于程序員的態(tài)度是:撫養(yǎng),但不溺愛。

Stroustrup:從技術(shù)上講,我并不認(rèn)為Java和C#是什么“從頭設(shè)計(jì)的”革新型語言。倘若Java是從技術(shù)原則出發(fā),從頭設(shè)計(jì),大概就不會(huì)模仿C/C++那種丑陋和病態(tài)的語法了(不必驚訝,Stroustrup在很多場合表示過,C++采用C的語法形式,實(shí)在是迫于兼容性。他本人更偏愛Simula的語法——譯者)。

我認(rèn)為,只有當(dāng)程序員們面對(duì)的問題發(fā)生了根本的變化的時(shí)候,或者當(dāng)我們發(fā)現(xiàn)了全新的、極其優(yōu)越的程序設(shè)計(jì)技術(shù),又完全不能為現(xiàn)存語言所支持的時(shí)候,我們才需要全新的語言。問題是,我們恐怕永遠(yuǎn)也碰不到那些“根本”、“全新”的情況。

我以為,自從OOP問世以來,可稱為“根本”的新型程序設(shè)計(jì)技術(shù),唯有泛型程序設(shè)計(jì)(genericprogramming)和生成式程序設(shè)計(jì)(generativeprogramming)技術(shù),這兩項(xiàng)技術(shù)主要是源于C++templates技術(shù)的運(yùn)用,也有一部分曾經(jīng)被視為面向?qū)ο蠛秃瘮?shù)式語言(functionallanguages)的次要成分,現(xiàn)在都變成正式、可用和可承受的技術(shù)了。我對(duì)于目前C++模板(template)程序設(shè)計(jì)的成果非常興奮。例如,像POOMA,Blitz++和MTL等程序庫,在很多地方改變了數(shù)值計(jì)算的方式。

Java和C#的一個(gè)“賣點(diǎn)”,就是它們的簡單性。現(xiàn)在Java是不是快失去這個(gè)賣點(diǎn)了?

Stroustrup:新語言總是宣稱自己如何如何簡單,對(duì)老語言的復(fù)雜性頗多非議。其實(shí)這種所謂的“簡單性”,簡單地說,就是不成熟性。語言的復(fù)雜性,是在解決現(xiàn)實(shí)世界中極為煩瑣和特殊的復(fù)雜問題的過程中逐漸增加的。一個(gè)語言只要活的時(shí)間夠長,總會(huì)有某些地方逐漸復(fù)雜起來,或者是語言本身,或者是程序庫和工具。C++和Java顯然都不例外,我看C#也一樣。如果一種語言能夠度過自己的幼年時(shí)代,它會(huì)發(fā)現(xiàn),自己無論是體積還是復(fù)雜性都大大增加了。

Lindholm:Java技術(shù)的的功能在增加,需要學(xué)習(xí)的東西也在增加。不過功能的增加并不一定帶來復(fù)雜性的增加。Java技術(shù)的發(fā)展,并沒有使學(xué)習(xí)曲線更加陡峭,只是讓它繼續(xù)向右方延展了。

標(biāo)準(zhǔn)

標(biāo)準(zhǔn)化語言和開放型語言各自的優(yōu)點(diǎn)和缺點(diǎn)何在?

Lindholm:對(duì)于一個(gè)開放、不允許專有擴(kuò)展、具有權(quán)威的強(qiáng)制性標(biāo)準(zhǔn)語言或者運(yùn)行環(huán)境來說,不存在什么缺點(diǎn)。允許專有擴(kuò)展就意味著允許廠商下套子綁架客戶。特別重要的是,必須讓整個(gè)平臺(tái),而不只是其中一部分完全標(biāo)準(zhǔn)化,才能杜絕廠商們利用高層次的專有API下套子。客戶要求有選擇廠商的自由,他們既要有創(chuàng)造性,又需要兼容性。

Stroustrup:對(duì)于一個(gè)語言,如C/C++來說,建立正式標(biāo)準(zhǔn)(如ISO標(biāo)準(zhǔn))最大的好處,在于可以防止某一個(gè)廠商操縱這種語言,把它當(dāng)成自己的搖錢樹。多個(gè)廠商的競爭給用戶帶來的是較低的價(jià)位和較好的穩(wěn)定性。

專有語言的好處,一是流行,二是便宜(不過等你被套牢了之后,情況就會(huì)起變化),三是對(duì)于商業(yè)性需求可以做出快速的反應(yīng)。

標(biāo)準(zhǔn)化語言的特點(diǎn)之一是,它不能忽略特殊用戶的需求。比如我在AT&T中所考慮的東西,其規(guī)模、可靠性和效率要求,跟那些普通廠商關(guān)注的大眾軟件相比,根本不可同日而語。那些公司很自然只關(guān)注主要的需求。

然而,多數(shù)大機(jī)構(gòu)和身處前沿的公司,都有著特殊的需求。C++的設(shè)計(jì)是開放、靈活和高效的,能夠滿足我所能想象的任何需求。跟其他的現(xiàn)代語言相比,C++的家長式作風(fēng)可謂少之又少,原因就在這。當(dāng)然,不能贊賞這一點(diǎn)的人會(huì)詬病C++的“危險(xiǎn)”。

擁有正式和開放標(biāo)準(zhǔn)的語言主要是為編程工具的使用者和客戶服務(wù)的,而擁有專屬“標(biāo)準(zhǔn)”的語言,主要是為廠商服務(wù)的。

到這,關(guān)于面向?qū)ο缶幊痰囊恍┲R(shí),就給大家介紹完了。希望對(duì)你有幫助。

【編輯推薦】

  1. 面向?qū)ο筌浖y試技術(shù)研究
  2. C語言的面向?qū)ο笫街貥?gòu)
  3. C#面向?qū)ο蟪绦蛟O(shè)計(jì)與框架
  4. 詳細(xì)介紹Scala面向?qū)ο缶幊?/span>
  5. JavaScript面向?qū)ο缶幊躺钊敕治?/span>
責(zé)任編輯:于鐵 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-07-05 15:22:04

程序設(shè)計(jì)

2011-07-05 15:59:57

面向?qū)ο缶幊?/a>

2022-06-07 14:13:58

Simula編程語言GNU cim

2012-03-14 10:48:05

C#

2009-10-21 17:36:36

VB基礎(chǔ)教程

2011-07-10 15:36:54

C++

2013-04-17 10:46:54

面向?qū)ο?/a>

2011-01-11 11:37:03

程序員

2011-01-07 10:54:39

程序員

2010-12-27 10:08:22

程序員

2012-06-07 10:11:01

面向?qū)ο?/a>設(shè)計(jì)原則Java

2013-12-12 16:30:20

Lua腳本語言

2011-04-11 10:44:53

對(duì)象編程C++

2011-08-25 14:43:55

LUA對(duì)象序列化

2012-12-25 10:51:39

IBMdW

2011-05-25 11:15:02

Javascript繼承

2011-05-13 11:05:52

javascript

2012-05-31 10:24:59

架構(gòu)

2015-03-16 11:14:26

Java程序員面向?qū)ο?/a>程序員

2022-04-01 10:27:04

面向?qū)ο?/a>串口協(xié)議代碼
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

欧美日韩精品福利| 久久婷婷国产综合精品青草| 久久久av网站| 中国特级黄色片| 小早川怜子影音先锋在线观看| 国产精品色眯眯| 国产精品二区在线| 亚洲天堂五月天| 欧美一区激情| 一道本无吗dⅴd在线播放一区| 日本一二三区在线| 粉嫩一区二区三区| 亚洲国产美女搞黄色| 青青草久久网络| 午夜精品久久久久久久91蜜桃| 小嫩嫩精品导航| 欧美老妇交乱视频| 精品国产aaa| 久久精品论坛| 这里是久久伊人| 亚洲色图38p| 51精品在线| 国产精品日日摸夜夜摸av| 国产精品久久波多野结衣| 中文字幕久久久久| 中文精品在线| 欧美激情视频在线免费观看 欧美视频免费一 | 91狠狠综合久久久| 国产欧美日韩一区二区三区四区| 精品国产乱码91久久久久久网站| 五月激情五月婷婷| 日韩精品影院| 欧美日韩在线影院| 日韩中文在线字幕| 欧美性videos| 亚洲国产高清在线| 欧美视频观看一区| 香蕉久久国产av一区二区| 久久国产精品99精品国产| 国产成人精品视频| 成年人免费高清视频| 亚洲国产日韩欧美在线| 色阁综合伊人av| 中文字幕av久久爽一区| 亚洲精品国产setv| 精品一区二区三区电影| 久久精品女同亚洲女同13| 97久久综合精品久久久综合| 日韩欧美中文字幕一区| 五月天视频在线观看| 99久久伊人| 欧美性大战久久| 欧美午夜性生活| 日本欧美不卡| 欧美亚洲一区二区在线观看| 九九视频精品在线观看| 日韩欧美精品电影| 欧洲亚洲精品在线| 丝袜制服一区二区三区| 成人国产精品一区二区免费麻豆 | 国产精品久久久久国产精品日日 | 在线观看国产免费视频| 国产成人一二片| 日韩精品欧美激情| 美女久久久久久久久久| 精品久久电影| 久久精品视频99| 免费一级全黄少妇性色生活片| 午夜精品久久久久99热蜜桃导演 | 夜夜春亚洲嫩草影视日日摸夜夜添夜| jizz日韩| 亚洲人123区| 国产av人人夜夜澡人人爽麻豆| 黄色激情在线播放| 日本韩国一区二区三区视频| 亚洲a级黄色片| 欧一区二区三区| 亚洲久久久久久久久久| 婷婷色一区二区三区| 欧美激情777| 韩国精品美女www爽爽爽视频| 日日摸天天添天天添破| 日本sm残虐另类| 91av免费看| 青青国产在线| 成人免费一区二区三区在线观看| 青青草视频在线视频| 黄在线观看免费网站ktv| 色婷婷av一区二区三区软件| 中文字幕第22页| 乱中年女人伦av一区二区| 亚洲深夜福利视频| 欧美日韩精品亚洲精品| 美女尤物久久精品| 91免费国产网站| 日韩精品系列| ...xxx性欧美| 成人免费观看毛片| 久久av偷拍| 亚洲人成人99网站| 欧美黄色免费看| 日韩精品欧美成人高清一区二区| 99久久伊人精品影院| 免费av在线电影| 一区二区三区在线观看欧美| 国产精品亚洲αv天堂无码| 91成人短视频在线观看| 亚洲免费视频网站| 黄色一级视频在线观看| 日本成人在线一区| 九九九热999| 宅男网站在线免费观看| 在线观看中文字幕不卡| 少妇一级淫免费观看| 亚洲国产精品成人| 国产精品高潮呻吟久久av黑人| 亚洲经典一区二区| 国产精品国产三级国产aⅴ入口| 秋霞无码一区二区| 久久wwww| 久久综合伊人77777| 日韩国产成人在线| 91视频免费看| av网站手机在线观看| 国产精品3区| 中文字幕日本欧美| 中文字幕手机在线视频| 成人国产精品免费观看动漫| 日本女人高潮视频| 青青伊人久久| 中文字幕国产精品久久| 亚洲精品久久久久久久蜜桃| 99这里只有久久精品视频| 成年人深夜视频| 亚洲国产高清在线观看| 日韩中文字幕在线视频| 日韩精选在线观看| 久久久九九九九| www.亚洲天堂网| 小说区图片区色综合区| 97久久国产精品| 污污网站在线免费观看| 亚洲午夜私人影院| 女性生殖扒开酷刑vk| 欧美日本不卡| 国产精品久久久久av福利动漫| 二区在线播放| 欧美成人国产一区二区| 欧美色图一区二区| 国产成人综合视频| 青青草国产免费| 成午夜精品一区二区三区软件| 欧美激情欧美激情| 人人妻人人澡人人爽人人欧美一区| 又紧又大又爽精品一区二区| 美女被艹视频网站| 欧美体内she精视频在线观看| 91九色对白| 毛片大全在线观看| 亚洲成色www8888| 青青草免费观看视频| 久久久久久久久久久黄色| 丰满少妇在线观看| 久久免费精品视频在这里| 成人亲热视频网站| 先锋成人av| 亚洲精品国产精品自产a区红杏吧 亚洲精品国产精品乱码不99按摩 亚洲精品国产精品久久清纯直播 亚洲精品国产精品国自产在线 | 亚洲三级网页| 国产精品精品久久久久久| а天堂8中文最新版在线官网| 欧美日韩在线免费视频| 日韩福利小视频| 成人免费av在线| 热久久精品国产| 99精品电影| 国产精品成人观看视频免费| 麻豆理论在线观看| 在线播放日韩精品| av 一区二区三区| 一个色综合网站| 国产精品815.cc红桃| 免费观看在线色综合| 樱空桃在线播放| 久久精品色综合| 国产在线观看精品| 福利影院在线看| 色av中文字幕一区| 天天色棕合合合合合合合| 91久久精品一区二区| 99精品久久久久| 久久久亚洲国产美女国产盗摄| 五月天激情播播| 亚洲欧美日韩国产一区| 在线观看亚洲视频啊啊啊啊| 国产精品一线| 国产精品网红直播| h片视频在线观看| 色哟哟网站入口亚洲精品| 国产免费高清视频| 狠狠色狠色综合曰曰| 啪啪一区二区三区| 99国产精品久久久久久久久久久| 亚洲美女性囗交| 亚洲欧美日韩专区| 欧美xxxx吸乳| 精品国产精品| 国产传媒一区二区三区| 青青热久免费精品视频在线18| 色综合久久精品亚洲国产 | 国产偷国产偷精品高清尤物 | 亚洲午夜无码久久久久| 亚洲一区二区在线视频| 91麻豆制片厂| 91社区在线播放| 免费黄色在线播放| 麻豆精品一区二区综合av| 成人综合视频在线| 欧美日本亚洲韩国国产| 亚洲精品高清视频| 精品一区免费| 九九九九精品| 91成人福利| 亚洲综合av影视| 亚洲高清国产拍精品26u| 日本成熟性欧美| 欧美办公室脚交xxxx| 欧美二区乱c黑人| 久久亚洲天堂| 久久精品国产91精品亚洲| 青青久在线视频| 亚洲毛片在线观看| 天天干天天色天天| 精品国产一区二区亚洲人成毛片 | 亚洲欧美成人网| 手机在线不卡av| 精品国产一二三| 二区三区在线视频| 欧美电影免费提供在线观看| 国产精品呻吟久久| 欧美精三区欧美精三区| 亚洲一区二区视频在线播放| 欧美午夜免费电影| 亚洲国产无线乱码在线观看| 在线观看www91| 姑娘第5集在线观看免费好剧| 日韩欧美高清在线视频| 特级毛片www| 色婷婷久久综合| 狠狠狠狠狠狠狠| 欧美三级在线视频| 一区二区不卡视频在线观看| 欧美日韩一区不卡| 一级久久久久久久| 欧美一区二区三区视频免费| 国产成人精品一区二区无码呦| 91精品在线免费观看| 国产免费叼嘿网站免费| 日韩精品自拍偷拍| 人妻无码中文字幕| 亚洲欧美另类人妖| 高清av在线| 色偷偷9999www| 超鹏97在线| 97香蕉久久夜色精品国产| av日韩亚洲| 国产精品久久久久久久久男 | 高清电影在线免费观看| 午夜精品久久久久久久99热浪潮| 老色鬼在线视频| 国产精品电影在线观看| 国产精品99精品一区二区三区∴| 亚洲va久久久噜噜噜久久天堂| 视频一区在线| 久久精品国产综合精品| 精品一级毛片| 欧洲金发美女大战黑人| 99精品久久| 亚洲老女人av| 国产福利91精品| 人妻熟女aⅴ一区二区三区汇编| 国产日韩欧美一区二区三区综合| 久久久久麻豆v国产| 亚洲一区自拍偷拍| 一级成人黄色片| 7777女厕盗摄久久久| 日本免费一区视频| 一区二区三区黄色| 18网站在线观看| 欧美最近摘花xxxx摘花| 日韩专区视频| 久久偷看各类wc女厕嘘嘘偷窃| 日本一区二区免费高清| 国产aaa免费视频| 开心九九激情九九欧美日韩精美视频电影| 黑人无套内谢中国美女| 久久天天做天天爱综合色| 欧美日韩免费一区二区| 91国偷自产一区二区开放时间| a级片免费视频| 国产亚洲精品久久久久久| 欧美xxx黑人xxx水蜜桃| 国产精品免费福利| 国产精品115| 不卡中文字幕在线| 久久福利精品| 色哟哟网站在线观看| 中文字幕乱码亚洲精品一区 | 欧美日韩电影一区| 香蕉av一区二区三区| 欧美成人午夜激情视频| 欧美xx视频| 国产精品区免费视频| 久久在线播放| 少妇人妻互换不带套| 不卡一区二区三区四区| 天天操天天操天天操天天操天天操| 色一区在线观看| 免费av网站观看| 蜜臀久久99精品久久久久久宅男| 精品欧美一区二区三区在线观看| 国产99在线播放| 中文字幕一区二区精品区| 在线观看高清免费视频| 久久久久久亚洲综合| 国产在线视频在线观看| 欧美一区二区三区视频在线观看| av在线女优影院| 国产精品xxxxx| 亚洲区小说区| 欧美性大战久久久久xxx| 成人一区二区三区中文字幕| 亚洲国产精品久| 欧美日韩大陆一区二区| av在线免费一区| 国产精品直播网红| 日韩综合精品| 亚洲视频第二页| 亚洲欧美在线另类| 一区二区日韩在线观看| 色爱av美腿丝袜综合粉嫩av | 精品久久久久久一区| 今天的高清视频免费播放成人| 亚洲欧美激情一区二区三区| 亚洲综合图片区| 亚洲av无码乱码国产麻豆| 久久在线视频在线| 精品成人18| 日韩一级特黄毛片| 成人精品小蝌蚪| 日本网站免费观看| 亚洲精品久久久久久久久久久久| 少女频道在线观看高清| 国产精品久久久一区二区三区| 欧美日韩精选| 国产老熟女伦老熟妇露脸| 狠狠爱在线视频一区| 理论在线观看| 国产精品一区二区久久国产| 日韩国产欧美| 特黄特黄一级片| 五月天一区二区三区| 免费在线毛片| 国产精品色悠悠| 午夜精品毛片| 超碰caoprom| 一本久久a久久免费精品不卡| 激情福利在线| 成人在线中文字幕| 亚洲精品黄色| 法国空姐电影在线观看| 欧美日韩国产成人在线91| 菠萝菠萝蜜在线观看| 国产一区二区三区免费不卡| 久久精品首页| 欧美日韩色视频| 亚洲国产成人精品久久| 麻豆精品蜜桃| 黄色网在线视频| 久久综合九色欧美综合狠狠| 日本成人一级片| 欧美第一黄色网| 国产精品美女久久久久久不卡| 日本高清久久久| 婷婷丁香激情综合| 在线激情免费视频| 国产精品区一区二区三在线播放| 久久久人人人| 欧美偷拍第一页| 亚洲午夜激情免费视频| 久久在线观看| 精品www久久久久奶水| 一区二区三区日本| 国产系列在线观看| caoporn国产精品免费公开| 久热精品视频| 国产精品白浆一区二小说| 一本色道久久综合亚洲精品小说 | 精品国产乱码久久久久久久久 | 99国产在线观看| 欧美bbbbb|