国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

漫話程序設(shè)計語言的進(jìn)化

2019-11-17 05:03:11
字體:
供稿:網(wǎng)友
  1967年5月20日,在挪威奧斯陸郊外的小鎮(zhèn)莉沙布舉行的IFip TC-2 工作會議上,挪威科學(xué)家Ole-Johan Dahl和Kristen Nygaard正式發(fā)布了Simula 67語言。Simula 67被認(rèn)為是最早的面向?qū)ο蟪绦蛟O(shè)計語言,它引入了所有后來面向?qū)ο蟪绦蛟O(shè)計語言所遵循的基礎(chǔ)概念:對象、類、繼續(xù)。之后,在1968年2月形成了Simula 67的正式文本。 漫話程序設(shè)計語言的進(jìn)化
  漫話程序設(shè)計語言的進(jìn)化挪威科學(xué)家Ole-Johan Dahl,Kristen Nygaard  也是在1968年,荷蘭教授E.W.Dijkstra提出了“GOTO語句是有害的”觀點(diǎn),指出程序的質(zhì)量與程序中所包含的GOTO語句的數(shù)量成反比,認(rèn)為應(yīng)該在一切高級語言中取消GOTO語句。這一觀點(diǎn)在計算機(jī)學(xué)術(shù)界激起了強(qiáng)烈的反響,引發(fā)了一場長達(dá)數(shù)年的廣泛的論戰(zhàn),其直接結(jié)果是結(jié)構(gòu)化程序設(shè)計方法的產(chǎn)生。   相信當(dāng)時沒有任何人預(yù)見到當(dāng)年發(fā)生的這兩件事對后來計算機(jī)技術(shù),非凡是軟件技術(shù)所產(chǎn)生的深遠(yuǎn)影響。盡管這兩種方法的思想差異巨大,但是多年以后,無論是Ole-Johan Dahl和Kristen Nygaard,還是E.W.Dijkstra,都因其在這一年所取得的成就,獲得了計算機(jī)界的諾貝爾獎——圖靈獎。    隨著計算機(jī)技術(shù)的迅猛發(fā)展,硬件成本不斷降低,而軟件成本卻不斷增加,因此,如何縮短軟件生產(chǎn)周期和提高維護(hù)效率,研制出高質(zhì)量的軟件產(chǎn)品成為一個重要課題。 程序設(shè)計思想的進(jìn)步   在20世紀(jì)60年代,軟件曾出現(xiàn)過嚴(yán)重危機(jī),由軟件錯誤而引起的信息丟失、系統(tǒng)報廢事件屢有發(fā)生。為此,1968年,荷蘭學(xué)者E.W.Dijkstra提出了程序設(shè)計中常用的GOTO語句的三大危害:破壞了程序的靜動一致性;程序不易測試;限制了代碼優(yōu)化。此舉引起了軟件界長達(dá)數(shù)年的論戰(zhàn),并由此產(chǎn)生了結(jié)構(gòu)化程序設(shè)計方法,同時誕生了基于這一設(shè)計方法的程序設(shè)計語言Pascal。   由瑞士計算機(jī)科學(xué)家Niklaus Wirth開發(fā)的Pascal,一經(jīng)推出,它的簡潔明了以及豐富的數(shù)據(jù)結(jié)構(gòu)和控制結(jié)構(gòu),為程序員提供了極大的方便性與靈活性,同時它非凡適合微計算機(jī)系統(tǒng),因此大受歡迎。結(jié)構(gòu)化程序設(shè)計思想采用了模塊分解與功能抽象和自頂向下、分而治之的方法,從而有效地將一個較復(fù)雜的程序系統(tǒng)設(shè)計任務(wù)分解成許多易于控制和處理的子程序,便于開發(fā)和維護(hù)。因此,結(jié)構(gòu)化方法迅速走紅,并在整個20世紀(jì)70年代的軟件開發(fā)中占絕對統(tǒng)治地位。   但是,到了70年代末期,隨著計算機(jī)科學(xué)的發(fā)展和應(yīng)用領(lǐng)域的不斷擴(kuò)大,對計算機(jī)技術(shù)的要求越來越高。結(jié)構(gòu)化程序設(shè)計語言和結(jié)構(gòu)化分析與設(shè)計已無法滿足用戶需求的變化,于是面向?qū)ο蠹夹g(shù)開始浮出水面。   面向?qū)ο蟪绦蛟O(shè)計方法起源于Simula 67語言。在程序設(shè)計語言的發(fā)展史上,20世紀(jì)60年代后期是承上啟下的重要時期。這一時期有三種重要的語言問世,即Simula 67、由一批頂尖計算機(jī)科學(xué)家共同設(shè)計的Algol 68、以及為IBM 360系列機(jī)配套開發(fā)的PL/I。這三種語言雖均有所創(chuàng)新,但Simula 67的面向?qū)ο蟾拍畹挠绊懯亲罹薮蠖钸h(yuǎn)的。它本身雖因?yàn)楸容^難學(xué)、難用而未能廣泛流行,但在它的影響下所產(chǎn)生的面向?qū)ο蠹夹g(shù)卻迅速傳播開來,并在全世界掀起了一股OO熱潮,至今盛行不衰。面向?qū)ο蟪绦蛟O(shè)計在軟件開發(fā)領(lǐng)域引起了大的變革,極大地提高了軟件開發(fā)的效率,為解決軟件危機(jī)帶來了一線光明。   但是,事實(shí)表明,面向?qū)ο蟪绦蛟O(shè)計方法雖然比結(jié)構(gòu)化方法能更自然地表現(xiàn)現(xiàn)實(shí)世界,但它不是靈丹妙藥,并不能解決所有問題,它本身存在固有的內(nèi)在的局限性。最近興起的面向方面編程(AOP)正是為了改進(jìn)上述程序設(shè)計方法學(xué)的不足。AOP被視為是“后”面向?qū)ο髸r代的一種新的重要的程序設(shè)計技術(shù)。而從更廣義的范疇看,在過去的40年里,軟件體系結(jié)構(gòu)試圖處理日益增長的軟件復(fù)雜性,但復(fù)雜性卻仍繼續(xù)增加,傳統(tǒng)的體系結(jié)構(gòu)似乎已經(jīng)達(dá)到了其處理此類問題的極限。新興的Web 服務(wù)通過答應(yīng)應(yīng)用程序以對象模型中立的方式實(shí)現(xiàn)互連,從而提供了一個更強(qiáng)大、更靈活的編程模型,并將對軟件開發(fā)方法產(chǎn)生巨大的影響。
軟件開發(fā)語言龍虎斗
  從1952年第一個高級語言Short Code誕生到現(xiàn)在,程序設(shè)計語言先后出現(xiàn)了不同類型、不同版本不下數(shù)百種語言。它們有的曇花一現(xiàn),有的被吸收合并到其他語言中,也有一些語言不斷地被完善、更新、發(fā)展。在這個過程中,開發(fā)環(huán)境提供商之間也不斷地進(jìn)行著激烈的競爭。   1964年誕生的Basic語言是較早出現(xiàn)且至今仍有較大影響的語言之一。1975年,微軟以Basic解釋器創(chuàng)業(yè),盡管1987年Borland 公司成功地推出了Turbo Basic 1.0,但由于其內(nèi)部原因而放棄了Basic市場,從而使微軟在Basic領(lǐng)域是一覽眾山小。1991年,Visual Basic 1.0問世,它答應(yīng)程序員在一個所見即所得的圖形界面中迅速完成開發(fā)任務(wù)。1998年發(fā)布的Visual Basic 6.0是傳統(tǒng)Visual Basic中功能最全、應(yīng)用最廣的一個版本。伴隨著.NET平臺的橫空出世,Visual Basic.NET又以一個全新的面目出現(xiàn)在我們面前。 漫話程序設(shè)計語言的進(jìn)化
  盡管Basic語言誕生較早,但其真正商業(yè)化是從1983年開始的。而在這一年,Borland公司又推出了聞名的Pascal編譯器Turbo Pascal 1.0,在一定程度上搶了Basic的風(fēng)頭。Turbo Pascal 1.0正式開創(chuàng)了Borland影響PC開發(fā)工具十幾年的歷史。盡管微軟也曾經(jīng)推出了Microsoft Pascal,但無疾而終。隨著Turbo Pascal 第9版的推出,Pascal語言也得到了不斷的發(fā)展。1995年,Borland發(fā)布了Delphi,使Pascal成為一種可視化編程語言。Delphi 1.0號稱“VB Killer”,又一次在危難的時刻拯救了Borland。   微軟和Borland之間的競爭并不只是在Basic和Pascal方面,在C語言世界里也同樣如此。早期的C/C++開發(fā)環(huán)境是Borland于1989年5月發(fā)布的Turbo C。同一時期,微軟也推出了Microsoft C/C++,不過它直到6.0版,市場反映都一直平平。之后,Borland C/C++ 3.0問世,開啟了Borland雄霸C/C++編譯器常達(dá)五六年之久的序幕。尤其是其3.1版的暢銷,使Borland一舉擊潰了Microsoft C/C++,市場占有率超過了50%。但后來由于Borland決策上的一些失誤,隨后的4.0和4.5版市場反映極差,相反微軟于1995年成功地推出了Visual C++ 1.0,并獲得市場好評,它不但在編譯器方面能與Borland C/C++ 3.1相抗衡,在整合發(fā)展環(huán)境方面更加領(lǐng)先。應(yīng)該說,這是兩家公司C/C++戰(zhàn)爭的轉(zhuǎn)折點(diǎn),也是C/C++發(fā)展的里程碑。在此之后,Visual C++一路高歌猛進(jìn)到6.0版,并最終發(fā)展為.NET時代的C#。不過,Borland也并沒有一蹶不振,2003年5月,Borland針對.NET發(fā)布了C#Builder,之后又發(fā)布了C++ BuilderX。   說到編程語言,不能不說java。Java是Internet時代的產(chǎn)物,同其他前輩語言相比,其最大的特色在于“一次編碼,多處運(yùn)行”。Sun公司是Java語言的締造者,但對Java開發(fā)環(huán)境做出最大貢獻(xiàn)的是Borland的JBuilder系列產(chǎn)品。1997年,Borland發(fā)布JBuilder 1.0,進(jìn)軍Java跨平臺開發(fā)。這之后,微軟曾試圖染指Java開發(fā)環(huán)境市場,并影響Java的技術(shù)發(fā)展,并在Visual Studio系列中,將Visual J++從1.0直接跨越到6.0。但是,JBuilder至今仍控制著Java的開發(fā)環(huán)境市場。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 合阳县| 朝阳县| 独山县| 邢台市| 隆德县| 应用必备| 易门县| 镇远县| 岳普湖县| 南昌市| 溧阳市| 无极县| 安平县| 宜兰市| 九龙县| 绍兴市| 永新县| 丹凤县| 都昌县| 宁海县| 孙吴县| 监利县| 石泉县| 司法| 祥云县| 杭锦后旗| 东安县| 赤城县| 威远县| 天水市| 玛曲县| 商洛市| 威海市| 乡宁县| 和政县| 沅江市| 华蓥市| 株洲县| 琼海市| 西华县| 宜州市|