| 導購 | 订阅 | 在线投稿
分享
 
 
 

漫話程序設計語言的進化

來源:互聯網  2008-06-01 02:05:20  評論

1967年5月20日,在挪威奧斯陸郊外的小鎮莉沙布舉行的IFip TC-2 工作會議上,挪威科學家Ole-Johan Dahl和Kristen Nygaard正式發布了Simula 67語言。Simula 67被認爲是最早的面向對象程序設計語言,它引入了所有後來面向對象程序設計語言所遵循的基礎概念:對象、類、繼續。之後,在1968年2月形成了Simula 67的正式文本。

漫話程序設計語言的進化

漫話程序設計語言的進化
挪威科學家Ole-Johan Dahl,Kristen Nygaard也是在1968年,荷蘭教授E.W.Dijkstra提出了「GOTO語句是有害的」觀點,指出程序的質量與程序中所包含的GOTO語句的數量成反比,認爲應該在一切高級語言中取消GOTO語句。這一觀點在計算機學術界激起了強烈的反響,引發了一場長達數年的廣泛的論戰,其直接結果是結構化程序設計方法的産生。 相信當時沒有任何人預見到當年發生的這兩件事對後來計算機技術,非凡是軟件技術所産生的深遠影響。盡管這兩種方法的思想差異巨大,但是多年以後,無論是Ole-Johan Dahl和Kristen Nygaard,還是E.W.Dijkstra,都因其在這一年所取得的成就,獲得了計算機界的諾貝爾獎——圖靈獎。 隨著計算機技術的迅猛發展,硬件成本不斷降低,而軟件成本卻不斷增加,因此,如何縮短軟件生産周期和提高維護效率,研制出高質量的軟件産品成爲一個重要課題。 程序設計思想的進步 在20世紀60年代,軟件曾出現過嚴重危機,由軟件錯誤而引起的信息丟失、系統報廢事件屢有發生。爲此,1968年,荷蘭學者E.W.Dijkstra提出了程序設計中常用的GOTO語句的三大危害:破壞了程序的靜動一致性;程序不易測試;限制了代碼優化。此舉引起了軟件界長達數年的論戰,並由此産生了結構化程序設計方法,同時誕生了基于這一設計方法的程序設計語言Pascal。 由瑞士計算機科學家Niklaus Wirth開發的Pascal,一經推出,它的簡潔明了以及豐富的數據結構和控制結構,爲程序員提供了極大的方便性與靈活性,同時它非凡適合微計算機系統,因此大受歡迎。結構化程序設計思想采用了模塊分解與功能抽象和自頂向下、分而治之的方法,從而有效地將一個較複雜的程序系統設計任務分解成許多易于控制和處理的子程序,便于開發和維護。因此,結構化方法迅速走紅,並在整個20世紀70年代的軟件開發中占絕對統治地位。 但是,到了70年代末期,隨著計算機科學的發展和應用領域的不斷擴大,對計算機技術的要求越來越高。結構化程序設計語言和結構化分析與設計已無法滿足用戶需求的變化,于是面向對象技術開始浮出水面。 面向對象程序設計方法起源于Simula 67語言。在程序設計語言的發展史上,20世紀60年代後期是承上啓下的重要時期。這一時期有三種重要的語言問世,即Simula 67、由一批頂尖計算機科學家共同設計的Algol 68、以及爲IBM 360系列機配套開發的PL/I。這三種語言雖均有所創新,但Simula 67的面向對象概念的影響是最巨大而深遠的。它本身雖因爲比較難學、難用而未能廣泛流行,但在它的影響下所産生的面向對象技術卻迅速傳播開來,並在全世界掀起了一股OO熱潮,至今盛行不衰。面向對象程序設計在軟件開發領域引起了大的變革,極大地提高了軟件開發的效率,爲解決軟件危機帶來了一線光明。 但是,事實表明,面向對象程序設計方法雖然比結構化方法能更自然地表現現實世界,但它不是靈丹妙藥,並不能解決所有問題,它本身存在固有的內在的局限性。最近興起的面向方面編程(AOP)正是爲了改進上述程序設計方法學的不足。AOP被視爲是「後」面向對象時代的一種新的重要的程序設計技術。而從更廣義的範疇看,在過去的40年裏,軟件體系結構試圖處理日益增長的軟件複雜性,但複雜性卻仍繼續增加,傳統的體系結構似乎已經達到了其處理此類問題的極限。新興的Web 服務通過答應應用程序以對象模型中立的方式實現互連,從而提供了一個更強大、更靈活的編程模型,並將對軟件開發方法産生巨大的影響。

軟件開發語言龍虎鬥

從1952年第一個高級語言Short Code誕生到現在,程序設計語言先後出現了不同類型、不同版本不下數百種語言。它們有的昙花一現,有的被吸收合並到其他語言中,也有一些語言不斷地被完善、更新、發展。在這個過程中,開發環境提供商之間也不斷地進行著激烈的競爭。 1964年誕生的Basic語言是較早出現且至今仍有較大影響的語言之一。1975年,微軟以Basic解釋器創業,盡管1987年Borland 公司成功地推出了Turbo Basic 1.0,但由于其內部原因而放棄了Basic市場,從而使微軟在Basic領域是一覽衆山小。1991年,Visual Basic 1.0問世,它答應程序員在一個所見即所得的圖形界面中迅速完成開發任務。1998年發布的Visual Basic 6.0是傳統Visual Basic中功能最全、應用最廣的一個版本。伴隨著.NET平台的橫空出世,Visual Basic.NET又以一個全新的面目出現在我們面前。

漫話程序設計語言的進化

盡管Basic語言誕生較早,但其真正商業化是從1983年開始的。而在這一年,Borland公司又推出了聞名的Pascal編譯器Turbo Pascal 1.0,在一定程度上搶了Basic的風頭。Turbo Pascal 1.0正式開創了Borland影響PC開發工具十幾年的曆史。盡管微軟也曾經推出了Microsoft Pascal,但無疾而終。隨著Turbo Pascal 第9版的推出,Pascal語言也得到了不斷的發展。1995年,Borland發布了Delphi,使Pascal成爲一種可視化編程語言。Delphi 1.0號稱「VB Killer」,又一次在危難的時刻拯救了Borland。 微軟和Borland之間的競爭並不只是在Basic和Pascal方面,在C語言世界裏也同樣如此。早期的C/C++開發環境是Borland于1989年5月發布的Turbo C。同一時期,微軟也推出了Microsoft C/C++,不過它直到6.0版,市場反映都一直平平。之後,Borland C/C++ 3.0問世,開啓了Borland雄霸C/C++編譯器常達五六年之久的序幕。尤其是其3.1版的暢銷,使Borland一舉擊潰了Microsoft C/C++,市場占有率超過了50%。但後來由于Borland決策上的一些失誤,隨後的4.0和4.5版市場反映極差,相反微軟于1995年成功地推出了Visual C++ 1.0,並獲得市場好評,它不但在編譯器方面能與Borland C/C++ 3.1相抗衡,在整合發展環境方面更加領先。應該說,這是兩家公司C/C++戰爭的轉折點,也是C/C++發展的裏程碑。在此之後,Visual C++一路高歌猛進到6.0版,並最終發展爲.NET時代的C#。不過,Borland也並沒有一蹶不振,2003年5月,Borland針對.NET發布了C#Builder,之後又發布了C++ BuilderX。 說到編程語言,不能不說java。Java是Internet時代的産物,同其他前輩語言相比,其最大的特色在于「一次編碼,多處運行」。Sun公司是Java語言的締造者,但對Java開發環境做出最大貢獻的是Borland的JBuilder系列産品。1997年,Borland發布JBuilder 1.0,進軍Java跨平台開發。這之後,微軟曾試圖染指Java開發環境市場,並影響Java的技術發展,並在Visual Studio系列中,將Visual J++從1.0直接跨越到6.0。但是,JBuilder至今仍控制著Java的開發環境市場。

  1967年5月20日,在挪威奧斯陸郊外的小鎮莉沙布舉行的IFip TC-2 工作會議上,挪威科學家Ole-Johan Dahl和Kristen Nygaard正式發布了Simula 67語言。Simula 67被認爲是最早的面向對象程序設計語言,它引入了所有後來面向對象程序設計語言所遵循的基礎概念:對象、類、繼續。之後,在1968年2月形成了Simula 67的正式文本。 [url=/bbs/detail_1785348.html][img]http://image.wangchao.net.cn/it/1323423814619.jpg[/img][/url]   [url=/bbs/detail_1785348.html][img]http://image.wangchao.net.cn/it/1323423814750.jpg[/img][/url]挪威科學家Ole-Johan Dahl,Kristen Nygaard  也是在1968年,荷蘭教授E.W.Dijkstra提出了「GOTO語句是有害的」觀點,指出程序的質量與程序中所包含的GOTO語句的數量成反比,認爲應該在一切高級語言中取消GOTO語句。這一觀點在計算機學術界激起了強烈的反響,引發了一場長達數年的廣泛的論戰,其直接結果是結構化程序設計方法的産生。   相信當時沒有任何人預見到當年發生的這兩件事對後來計算機技術,非凡是軟件技術所産生的深遠影響。盡管這兩種方法的思想差異巨大,但是多年以後,無論是Ole-Johan Dahl和Kristen Nygaard,還是E.W.Dijkstra,都因其在這一年所取得的成就,獲得了計算機界的諾貝爾獎——圖靈獎。   隨著計算機技術的迅猛發展,硬件成本不斷降低,而軟件成本卻不斷增加,因此,如何縮短軟件生産周期和提高維護效率,研制出高質量的軟件産品成爲一個重要課題。 程序設計思想的進步   在20世紀60年代,軟件曾出現過嚴重危機,由軟件錯誤而引起的信息丟失、系統報廢事件屢有發生。爲此,1968年,荷蘭學者E.W.Dijkstra提出了程序設計中常用的GOTO語句的三大危害:破壞了程序的靜動一致性;程序不易測試;限制了代碼優化。此舉引起了軟件界長達數年的論戰,並由此産生了結構化程序設計方法,同時誕生了基于這一設計方法的程序設計語言Pascal。   由瑞士計算機科學家Niklaus Wirth開發的Pascal,一經推出,它的簡潔明了以及豐富的數據結構和控制結構,爲程序員提供了極大的方便性與靈活性,同時它非凡適合微計算機系統,因此大受歡迎。結構化程序設計思想采用了模塊分解與功能抽象和自頂向下、分而治之的方法,從而有效地將一個較複雜的程序系統設計任務分解成許多易于控制和處理的子程序,便于開發和維護。因此,結構化方法迅速走紅,並在整個20世紀70年代的軟件開發中占絕對統治地位。   但是,到了70年代末期,隨著計算機科學的發展和應用領域的不斷擴大,對計算機技術的要求越來越高。結構化程序設計語言和結構化分析與設計已無法滿足用戶需求的變化,于是面向對象技術開始浮出水面。   面向對象程序設計方法起源于Simula 67語言。在程序設計語言的發展史上,20世紀60年代後期是承上啓下的重要時期。這一時期有三種重要的語言問世,即Simula 67、由一批頂尖計算機科學家共同設計的Algol 68、以及爲IBM 360系列機配套開發的PL/I。這三種語言雖均有所創新,但Simula 67的面向對象概念的影響是最巨大而深遠的。它本身雖因爲比較難學、難用而未能廣泛流行,但在它的影響下所産生的面向對象技術卻迅速傳播開來,並在全世界掀起了一股OO熱潮,至今盛行不衰。面向對象程序設計在軟件開發領域引起了大的變革,極大地提高了軟件開發的效率,爲解決軟件危機帶來了一線光明。   但是,事實表明,面向對象程序設計方法雖然比結構化方法能更自然地表現現實世界,但它不是靈丹妙藥,並不能解決所有問題,它本身存在固有的內在的局限性。最近興起的面向方面編程(AOP)正是爲了改進上述程序設計方法學的不足。AOP被視爲是「後」面向對象時代的一種新的重要的程序設計技術。而從更廣義的範疇看,在過去的40年裏,軟件體系結構試圖處理日益增長的軟件複雜性,但複雜性卻仍繼續增加,傳統的體系結構似乎已經達到了其處理此類問題的極限。新興的Web 服務通過答應應用程序以對象模型中立的方式實現互連,從而提供了一個更強大、更靈活的編程模型,並將對軟件開發方法産生巨大的影響。 軟件開發語言龍虎鬥   從1952年第一個高級語言Short Code誕生到現在,程序設計語言先後出現了不同類型、不同版本不下數百種語言。它們有的昙花一現,有的被吸收合並到其他語言中,也有一些語言不斷地被完善、更新、發展。在這個過程中,開發環境提供商之間也不斷地進行著激烈的競爭。   1964年誕生的Basic語言是較早出現且至今仍有較大影響的語言之一。1975年,微軟以Basic解釋器創業,盡管1987年Borland 公司成功地推出了Turbo Basic 1.0,但由于其內部原因而放棄了Basic市場,從而使微軟在Basic領域是一覽衆山小。1991年,Visual Basic 1.0問世,它答應程序員在一個所見即所得的圖形界面中迅速完成開發任務。1998年發布的Visual Basic 6.0是傳統Visual Basic中功能最全、應用最廣的一個版本。伴隨著.NET平台的橫空出世,Visual Basic.NET又以一個全新的面目出現在我們面前。 [url=/bbs/detail_1785348.html][img]http://image.wangchao.net.cn/it/1323423814865.jpg[/img][/url]   盡管Basic語言誕生較早,但其真正商業化是從1983年開始的。而在這一年,Borland公司又推出了聞名的Pascal編譯器Turbo Pascal 1.0,在一定程度上搶了Basic的風頭。Turbo Pascal 1.0正式開創了Borland影響PC開發工具十幾年的曆史。盡管微軟也曾經推出了Microsoft Pascal,但無疾而終。隨著Turbo Pascal 第9版的推出,Pascal語言也得到了不斷的發展。1995年,Borland發布了Delphi,使Pascal成爲一種可視化編程語言。Delphi 1.0號稱「VB Killer」,又一次在危難的時刻拯救了Borland。   微軟和Borland之間的競爭並不只是在Basic和Pascal方面,在C語言世界裏也同樣如此。早期的C/C++開發環境是Borland于1989年5月發布的Turbo C。同一時期,微軟也推出了Microsoft C/C++,不過它直到6.0版,市場反映都一直平平。之後,Borland C/C++ 3.0問世,開啓了Borland雄霸C/C++編譯器常達五六年之久的序幕。尤其是其3.1版的暢銷,使Borland一舉擊潰了Microsoft C/C++,市場占有率超過了50%。但後來由于Borland決策上的一些失誤,隨後的4.0和4.5版市場反映極差,相反微軟于1995年成功地推出了Visual C++ 1.0,並獲得市場好評,它不但在編譯器方面能與Borland C/C++ 3.1相抗衡,在整合發展環境方面更加領先。應該說,這是兩家公司C/C++戰爭的轉折點,也是C/C++發展的裏程碑。在此之後,Visual C++一路高歌猛進到6.0版,並最終發展爲.NET時代的C#。不過,Borland也並沒有一蹶不振,2003年5月,Borland針對.NET發布了C#Builder,之後又發布了C++ BuilderX。   說到編程語言,不能不說java。Java是Internet時代的産物,同其他前輩語言相比,其最大的特色在于「一次編碼,多處運行」。Sun公司是Java語言的締造者,但對Java開發環境做出最大貢獻的是Borland的JBuilder系列産品。1997年,Borland發布JBuilder 1.0,進軍Java跨平台開發。這之後,微軟曾試圖染指Java開發環境市場,並影響Java的技術發展,並在Visual Studio系列中,將Visual J++從1.0直接跨越到6.0。但是,JBuilder至今仍控制著Java的開發環境市場。
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有