六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

Java咖啡館——大話面向對象(1)

[摘要]1946年2月15日,隨著第一臺現代電子計算機ENIAC轟鳴著來到這個世界,編寫程序也成為三百六十行之外的一個嶄新職業。我們稱編寫程序的工程師為程序員或者開發者。  ENIAC是一臺重達30噸的龐然...

    

  1946年2月15日,隨著第一臺現代電子計算機ENIAC轟鳴著來到這個世界,編寫程序也成為三百六十行之外的一個嶄新職業。我們稱編寫程序的工程師為程序員或者開發者。

  ENIAC是一臺重達30噸的龐然大物,由19000多個晶體管、1500多個繼電器組成。為了給它下達指令,程序員必須通過不同的連接線組合進行編程。要編制運行新的程序,還必須拔掉連線重新來過。整天面對二進制編程的工作相當枯燥乏味,而且是直接對程序地址讀寫,自然出錯頻繁。閱讀由連線表達的程序更不亞于揣摩天書,維護和改造程序的價格成本居高不下。更要命的是,早期的計算機制造價格相當昂貴,而在程序編制調試完成之前,計算機不得不一直空轉,導致軟件開發的費用竟然遠遠超過硬件的投入。

  為了解決軟件開發的難題,計算機科學家發明了匯編語言,通過一些助記符來減輕二進制編碼的開發壓力。這的確是行之有效的方法,直到現在,程序員在開發中還常常使用嵌入式匯編來提高軟件運行速度,游戲引擎更是如此。然而,匯編語言太依賴程序員的素質,而且無法適應大規模的開發。

  黃糖故事 Grace Murray Hopper、Bug和Debug

Java咖啡館——大話面向對象(1)  由于一次傳奇般的投資,Mark I計算機把IBM從生產制表機、肉鋪磅秤、咖啡碾磨機等亂七八糟玩意的行業,領入了計算機制造業的領地,最終成為如今的藍色巨人。本系列文章中曾介紹過Mark I三個程序員之一的數學家Grace Hopper是如何創造了“BUG”和“DEBUG”這兩個計算機史上著名的兩個名詞的。而這位Hopper女士,實在是一個不得了的人物。1952年,Hopper覺得用機器碼編程是不是比較原始,為什么不能用類自然語言編寫程序,然后再用一個工具把它轉換成機器碼呢?不久,她就開發出世界上第一套編譯器A-0,是現代編譯技術的原型。1956年她在第一臺儲存程序的商業電子計算機UNIVAC I、II上開發出B-0,之后叫做FLOW-MATIC,它導致了計算機商用語言COBOL(COmmon Business Oriented Language)的誕生。雖然Hopper有著“電腦之母”的美譽,但是傳說她辦公室有一個倒著走的鐘,以及一面秀著骷髏頭的海盜旗。

  到了六十年代,FORTRAN (FORmula TRANslating)、COBOL、LISP、ALGOL 60等現代高級語言的出現了。程序員可以用接近自然語言的程序語言編制軟件,然后通過編譯器轉換成機器可執行的代碼。由于使用精確的形式語言來定義程序語言本身,并且通過對硬件的抽象使得程序與計算機平臺無關,導致高級語言生產效率大大提高,維護費用自然降低不少,計算機軟件業終于得以蓬勃發展。

  好景不長。隨著軟件大規模的應用,程序的開發方法和管理手段逐漸無法跟上軟件規模的膨脹,從而導致了軟件危機的出現。就拿1963~1966年間的IBM 360系統來說,該系統有100萬行的代碼量,IBM每年動用5000人來維護該系統,但是,每個版本都是從上一個版本找出1000以上個錯誤而修訂的結果,好像越改錯誤越多,根本沒有改善的跡象。有人把IBM 360系統形容為一只逃亡的野獸落到泥潭中做垂死的掙扎,越是掙扎,陷的越深,最后仍然無法逃脫滅頂的災難。

  人們不得不停下腳步思考,到底哪里出了問題。回想自己,每個人做事情,都是列舉重點,然后細化并逐個完成。比如制造自行車,肯定是先把自行車按照功能分塊,先造車架,然后是兩個車輪,接著是踏板等傳動裝置,最后才是坐墊、車鈴等零件。而制造車輪,肯定是要分別制造鋼圈、鋼絲、輪胎,而輪胎有分內外胎。如果軟件開發能夠遵循這種從大到小、逐步精確的思想,是不是能夠解決這個軟件危機呢?

  沒錯,這種結構化的抽象分析方法,導致了結構化程序設計方法的誕生。

  黃糖故事 Niklaus Wirth和PASCAL

Java咖啡館——大話面向對象(1)  凡是學過一點計算機知識的人大概都知道“數據結構+算法二程序”這一著名公式。提出這一公式的瑞士計算機科學家Niklaus Wirth由于發明了多種影響深遠的程序設計語言,并提出結構化程序設計這一革命性概念而獲得了1984年的圖靈獎。

  Wirth開發的PASCAL在數據結構和過程控制結構方面都有很多創造,比如Java中字符型、引用型,以及if-then-else、while、for等多種控制結構,都是從PASCAL里面借鑒發展而來的。可以說,現代程序設計語言中常用的數據結構和控制結構絕大多數都是由PASCAL語言奠定基礎的,因此PASCAL在程序設計語言的發展史上具有承上啟下的重要里程碑意義。現在你知道為什么很多計算機專業的學生都要學PASCAL語言了吧。

  1971年,Wirth基于其開發程序設計語言和編程的實踐經驗,首次提出了“結構化程序設計”(structured programming)的概念。這個概念的要點是:不要求一步就編制成可執行的程序,而是分若干步進行,逐步求精。第一步編出的程序抽象度最高,第二步編出的程序抽象度有所降低……最后一步編出的程序即為可執行的程序。用這種方法編程,似乎復雜,實際上優點很多,可使程序易讀、易寫、易調試、易維護、易保證其正確性及驗證其正確性。結構化程序設計方法又稱為“自頂向下”或“逐步求精”法,在程序設計領域引發了一場革命,成為程序開發的一個標準方法,尤其是在后來發展起來的軟件工程中獲得廣泛應用。有人評價說沃思的結構化程序設計概念“完全改變了人們對程序設計的思維方式”,這是一點也不夸張的。

  黃糖故事 Philippe Kahn的Borland傳奇

  Wirth開發PASCAL的初衷是為了有一個適合于教學的語言。但一經推出,由于它的簡潔明了、提供豐富的數據結構和控制結構,使得程序開發大為簡便,竟然大受歡迎。在C語言問世以前,PASCAL是風靡全球、最受歡迎的語言之一,不但創下了發行拷貝數最多的世界記錄,而且成為大學數據結構教學的“惟一官方指定”語言。

Java咖啡館——大話面向對象(1)  Phillipe Kahn是Niklaus Wirth的學生,畢業后到美國加利福尼亞州創立了Borland公司,憑借拳頭產品Turbo PASCAL,當時就賣出了100多萬個拷貝,成為百萬富翁。而Borland公司是程序員津津樂道到程序開發工具供應商,他們從最早的Turbo PASCAL、Turbo C、Turbo PROLOG等Turbo系列,到如今的Delphi、C++ Builder、JBuilder、C# Builder系列,無一不是舉足輕重的開發工具,從而在開發者心目中有著崇高的地位。





主站蜘蛛池模板: 一级aa毛片 | 日韩美女网站 | 亚洲动作片 | 亚洲一区二区三区免费视频 | 在线视频一区二区三区 | 午夜免费视频观看在线播放 | 日本福利片在线观看 | 日本色www| 欧洲三级在线观看 | 欧美亚洲另类色国产综合 | 日本在线视频免费观看 | 婷婷天天| 欧美一区二区三区久久综 | 亚洲成a人v| 四虎免费永久观看 | 婷婷性 | 欧美亚洲天堂 | 综合激情六月 | 亚洲一级免费毛片 | 中文天堂在线最新版在线www | 亚洲xx视频 | 青青在线观看 | 四虎成人在线 | 午夜影院黄色片 | 在线资源站 | 午夜性爽爽爽 | 婷婷四房综合激情五月性色 | 四房婷婷 | 啪在线视频 | 日韩高清免费观看 | 五月婷婷六月丁香综合 | 欧美性视频在线播放黑人 | 青青青国产在线观看 | 天天曰曰 | 欧美在线观看网站 | 色综色天天综合网 | 日韩推理片在线免费看网站 | 午夜色大片 | 青草视频网站在线观看 | 三级黄色片免费观看 | 午夜日 |