導航:首頁 > 源碼編譯 > 編譯器商業價值

編譯器商業價值

發布時間:2022-10-01 07:13:18

❶ 哪本"編譯原理"的書比較好

我們學校用的是《編譯原理》與《編譯原理與實踐》這兩本書,這兩本書都是國外的教材。我覺得《編譯原理與實踐》這本書不錯,自學應該能看懂,而且代碼比較多,書最後還有整個小型編譯器的源代碼。
編譯不好學,你就慢慢學吧。

下面的資料請作參考:

當代編譯技術三大聖經級別的教材

1.龍書(Dragon book)
書名是Compilers: Principles,Techniques,and Tools
作者是:Alfred V.Aho,Ravi Sethi,Jeffrey D.Ullman

內容簡介
《編譯原理》作者Alfred V.Aho、Ravi Sethi和Jeffrey D.Ullman是世界著名的計算機 科學家,他們在計算機科學理論、資料庫等很多領域都做出了傑出貢獻。《編譯原理》 是編譯領域無可替代的經典著作,被廣大計算機專業人士譽為「龍書」。《編譯原理》一 直被世界各地的著名高等院校和科研機構(如貝爾實驗室、哥倫比亞大學、普 林斯頓大學和斯坦福大學等)廣泛用作本科生和研究生編譯原理與技術課程的 教材,《編譯原理》對我國計算機教育界也具有重大影響。 書中深入討論了編譯器設計的重要主題,包括詞法分析、語法分析、語法制 導分析、類型檢查、運行環境、中間代碼生成、代碼生成、代碼優化等,並在 最後兩章中討論了實現編譯器的一些編程問題和幾個編譯器實例,而且每章都 提供了大量的練習和參考文獻。

與上一版相比,《編譯原理》第二版進行了全面的修訂,涵蓋了編譯器開發方面的最新進展。每章中都提供了大量的系統及參考文獻。《編譯原理》是編譯原理課程方面的經典教材,內容豐富,適合作為高等院校計算機及相關專業本科生及研究生的編譯原理課程的教材,也是廣大技術人員的極佳參考讀物。

作者簡介
Alfred V.Aho,美國歌倫比亞大學教授,美國國家工程院院士,ACM和IEEE會士,曾獲得IEEE的馮·諾伊曼獎。著有多部演算法、數據結構、編譯器、資料庫系統及計算機科學基礎方面的著作。
Monica S.Lam,斯坦福大學計算機科學系教授,曾任Tensilica的首席科學家,也是Moka5的首任CEO。曾經主持SUIF項目,該項目產生了最流行的研究用編譯器之一。
Ravi Sethi,Avaya實驗室總裁,曾任貝爾實驗室高級副總裁TLucent Technologies通信軟體的CTO。他曾在賓夕法尼亞州立大學、亞利桑那州立大學和普林斯頓大學任教,是ACM會士。
Jeffrey D.Ullman斯坦福大學計算機科學系教授和Gradiance CEO,他的研究興趣包括資料庫理論、資料庫集成、數據挖掘和利用信息基礎設施教學等。他是美國國家工程院院士、IEEE會士,獲得過ACM的KarIstrom傑出教育家獎和Knuth獎。
第一版中文版
第二版中文版

2.鯨書(Whale book)
書名是:Advanced Compiler Design and Implementation
作者是:Steven S.Muchnick

內容簡介
本書迎接現代語言和體系結構的挑戰,幫助讀者作好准備,去應對將來要遇到的編譯器設計的問題。
本書涵蓋現代微處理器編譯器的設計和實現方面的所有高級主題。本書從編譯設計基礎領域中的高級問題開始,廣泛而深入地闡述各種重要的代碼優化技術,分析各種優化之間的相對重要關系,以及實現這些優化的最有效方法。
本書特點
●為理解高級編譯器設計的主要問題奠定了基礎
●深入闡述優化問題
●用Sun的SPARC、IBM的POWER和PowerPC、DEC的Alpha以及Intel的Pentium和相關商業編譯 器作為案例,說明編譯器結構、中間代碼設計和各種優化方法
●給出大量定義清晰的關於代碼生成、優化和其他問題的演算法
●介紹由作者設計的以清晰、簡潔的方式描述演算法的語言ICAN (非形式編譯演算法表示)。

本書是經典的編譯器著作,與「龍書」齊名,稱為鯨書。書中針對現代語言和體系結構全面介紹了編譯器設計與實現的高級論題,從編譯器的基礎領域中的高級問題開始,然後深入討論了各種重要的代碼優化。本書專為編譯器專業人士和計算機專業本科生,研究生編寫,在設計和實現高度優化的編譯器以及確定優化的重要性和實現優化的最有效的方法等方面,為讀者提供了非常有價值的指導。

作者簡介
Steven S.Muchnick,曾是計算機科學教授,後作為惠普的PA-RISC和SUN的SPARC兩種計算機體系結構的核心開發成員,將自己的知識和經驗應用於編譯器設計,並擔任這些系統的高級編譯器設計與實現小組的領導人。他在研究和開發方面的雙重經驗,對於指導讀者作出編譯器設計決策極具價值。

3.虎書(Tiger book)
書名是:Modern Compiler Implementation in C /java /ML,Second Edition
作者是:Andrew W.Appel,with Jens Palsberg

內容簡介
《現代編譯原理——C語言描述(英文版)/圖靈原版計算機科學系列》全面講述了現代編譯器的各個組成部分,包括:詞法分析、語法分析、抽象語法、語義檢查、中間代碼表示、指令選擇、數據流分析、寄存器分配以及運行時系統等。與大多數編譯原理的教材不同,《現代編譯原理——C語言描述(英文版)/圖靈原版計算機科學系列》採用了函數語言和面向對象語言來描述代碼生成和寄存器分配,對於編譯器中各個模塊之間的介面都給出了實際的 C 語言頭文件。 全書分成兩部分,第一部分是編譯的基礎知識,適用於第一門編譯原理課程(一個學期);第二部分是高級主題,包括面向對象語言和函數語言、垃圾收集、循環優化、 SSA(靜態單賦值)形式、循環調度、存儲結構優化等。
本書是一本著名的編譯原理課程的教材。國際上眾多名校均採用本書作為編譯原理課程的教材,包括美國麻省理工學院、加州大學伯克利分校、普林斯頓大學和英國劍橋大學等。本書在國外享有「虎書」的稱號,與有「龍書」之稱的《編譯原理》(Alfred Aho 等編著)齊名。與編譯原理方面的其他名著相比,本書出版時間晚,內容新。 書中專門為學生提供了一個用 C 語言編寫的實習項目,包括前端和後端設計,學生可以在一學期內創建一個功能完整的編譯器。

作者簡介
Andrew W.Appel,美國普林斯頓大學計算機科學系教授,第26屆ACM SIGPLAN-SIGACT程序設計原理年會大會執行主席,1998-1999年在貝爾實驗室做研究工作。主要研究方向是計算機安全、編譯器設計、程序設計語言等。

❷ 人工智慧領域有哪幾位科學家獲圖靈獎,他們分別為人工智慧做出了什麼貢獻

圖靈獎,是美國計算機協會(ACM)於1966年設立的,又叫「A.M. 圖靈獎」,專門獎勵那些對計算機事業作出重要貢獻的個人。其名稱取自計算機科學的先驅、英國科學家阿蘭·圖靈,這個獎設立目的之一是紀念這位科學家。獲獎者的貢獻必須是在計算機領域具有持久而重大的技術先進性的。大多數獲獎者是計算機科學家。
圖靈獎是計算機界最負盛名的獎項,有「計算機界諾貝爾獎」之稱。圖靈獎對獲獎者的要求極高,評獎程序也極嚴,一般每年只獎勵一名計算機科學家,只有極少數年度有兩名以上在同一方向上做出貢獻的科學家同時獲獎。目前圖靈獎由英特爾公司贊助,獎金為100,000美元。
每年,美國計算機協會將要求提名人推薦本年度的圖靈獎候選人,並附加一份200到500字的文章,說明被提名者為什麼應獲此獎。任何人都可成為提名人。美國計算機協會將組成評選委員會對被提名者進行嚴格的評審,並最終確定當年的獲獎者。
截止至2005年,獲此殊榮的華人僅有一位,他是2000年圖靈獎得主姚期智。
編輯本段歷年圖靈獎獲得者
2007 Edmund M. Clarke、Allen Emerson和Joseph Sifakis
獲獎原因:在將模型檢查發展為被硬體和軟體業中所廣泛採納的高效驗證技術上的貢獻。而DDJ則將三人的貢獻稱為「在發現計算機硬體和軟體中設計錯誤的自動化方法方面的工作」。
2006 Fran Allen
獲獎原因:對於優化編譯器技術的理論和實踐做出的先驅性貢獻,這些技術為現代優化編譯器和自動並行執行打下了基礎。
2005 Peter Naur
獲獎原因:由於在設計Algol60程序設計語言上的貢獻。Algol60語言定義清晰,是許多現代程序設計語言的原型。
2004 Vinton G. Cerf、Robert E. Kahn
獲獎原因:由於在互聯網方面開創性的工作,這包括設計和實現了互聯網的基礎通訊協議,TCP/IP,以及在網路方面卓越的領導。
2003 Alan Kay
獲獎原因:由於在面向對象語言方面原創性思想,領導了Smalltalk的開發團隊,以及對PC的基礎性貢獻。
至理名言:預測未來的最好方法是創造它。
2002 Ronald L. Rivest、Adi Shamir、Leonard M. Adleman
獲獎原因:由於在公共密鑰理論和實踐方面的基礎性工作。
2001 Ole-Johan Dahl、Kristen Nygaard
獲獎原因:由於面向對象編程始發於他們基礎性的構想,這些構想集中體現在他們所設計的編程語言SIMULA I 和SIMULA 67中。
2000 Andrew Chi-Chih Yao(姚期智)
獲獎原因:由於在計算理論方面的貢獻而獲獎,包括偽隨機數的生成演算法、加密演算法和通訊復雜性。
1999 Frederick P. Brooks, Jr.
獲獎原因:由於在計算機體系架構、操作系統以及軟體工程方面所做出的具有里程碑式意義的貢獻。人月神話的作者。
1998 James Gray
獲獎原因:由於在資料庫、事務處理研究和相關系統實現的技術領導工作。
1997 Douglas Engelbart
獲獎原因:由於提出了激動人心的互動式計算機未來構想,以及發明了實現這一構想的關鍵技術。
1996 Amir Pnueli
獲獎原因:由於在計算科學中引入temporal邏輯以及對編程和系統認證方面的傑出貢獻。
1995 Manuel Blum
獲獎原因:由於在計算復雜性理論、密碼學以及程序校驗方面的基礎性貢獻。
1994 Edward Feigenbaum、Raj Reddy
獲獎原因:由於他們所設計和建造的大規模人工智慧系統,證明了人工智慧技術的重要性和其潛在的商業價值。
1993 Juris Hartmanis、Richard E. Stearns
獲獎原因:由於他們的論文奠定了計算復雜性理論的基礎。
1992 Butler W. Lampson
獲獎原因:由於在個人分布式計算機系統及其實現技術上的貢獻,這包括:工作站、網路、操作系統、編程系統、顯示、安全和文檔發布。
1991 Robin Milner
獲獎原因:由於在可計算函數邏輯(LCF)、ML和並行理論(CCS)這三個方面突出和完美的貢獻。
1990 Fernando J. Corbato'
獲獎原因:由於組織和領導了多功能、大規模、時間和資源共享的計算機系統的開發。
1989 William (Velvel) Kahan
獲獎原因:由於在數值分析方面的基礎性貢獻。
1988 Ivan Sutherland
獲獎原因:由於在計算機圖形學方面開創性和遠見性的貢獻,其所建立的技術歷經二、三十年依然有效。
1987 John Cocke
獲獎原因:由於在編譯器設計和理論、大規模系統架構以及開發RISC等方面的重要貢獻。
1986 John Hopcroft、Robert Tarjan
獲獎原因:由於在演算法及數據結構設計和分析方面的基礎性成就。
1985 Richard M. Karp
獲獎原因:由於在演算法理論方面,特別是NP-completeness理論方面,連續不斷的貢獻。
1984 Niklaus Wirth
獲獎原因:由於開發了EULER、 ALGOL-W、 MODULA和PASCAL一系列嶄新的計算語言。
1983 Ken Thompson、Dennis M. Ritchie
獲獎原因:由於在通用操作系統理論研究,特別是UNIX操作系統的實現上的貢獻。
1982 Stephen A. Cook
獲獎原因:由於其於1971年發表的論文,奠定了NP-Completeness理論的基礎。
1981 Edgar F. Codd
獲獎原因:由於在數椐庫管理系統的理論和實踐方面基礎性和連續不斷的貢獻,關系資料庫之父。
1980 C. Antony R. Hoare
獲獎原因:由於在編程語言的定義和設計方面的基礎性貢獻。
1979 Kenneth E. Iverson
獲獎原因:由於在編程語言的理論和實踐方面,特別是APL,所進行的開創性的工作。
1978 Robert W. Floyd
獲獎原因:由於在如何開發高效、可靠的軟體方法論方面的貢獻,這包括:建立分析理論、編程語言的語義學、自動程序檢驗、自動程序綜合和演算法分析在內的多項
計算機子學科。
1977 John Backus
獲獎原因:由於在高級語言方面所做出的具有廣泛和深遠意義的貢獻,特別是其在Fortran語言方面。
1976 Michael O. Rabin、Dana S. Scott
獲獎原因:由於他們的論文"有限自動機與它們的決策問題",被證明具有巨大的價值。
1975 Allen Newell、Herbert A. Simon
獲獎原因:由於在人工智慧、人類識別心理和表處理的基礎貢獻。
1974 Donald E. Knuth
獲獎原因:由於在演算法分析和程序語言設計方面的重要貢獻,計算機程序設計藝術的作者。
1973 Charles W. Bachman
獲獎原因:由於在資料庫方面的傑出貢獻。
1972 E.W. Dijkstra
獲獎原因:由於對開發ALGOL做出了原理性貢獻。
1971 John McCarthy
獲獎原因:由於其講稿"The Present State of Research on Artificial
Intellegence",對人工智慧領域的貢獻。
1970 J.H. Wilkinson
獲獎原因:由於其在數值分析方面的研究工作。
1969 Marvin Minsky
獲獎原因:人工智慧理論及軟體
1968 Richard Hamming
獲獎原因:由於其在計數方法、自動編碼系統、檢測及糾正錯碼方面的工作。
1967 Maurice V. Wilkes
獲獎原因:由於設計和製造了第一台內部存儲程序的計算機EDSAC。
1966 A.J. Perlis
獲獎原因:由於其在先進編程技術和編譯架構方面的貢獻。

❸ 軟體工程大一暑假應該自學點什麼

C++好些。我們的項目就是C++和Java聯合起來做的,C++寫的是核心代碼,Java做的是外圍的代碼。
個人覺得C++好些。
當然了,這也要看你從事的項目了。如果做網站之類的,還是用Java
一般軟體C++還是比較多的
你要是僅僅說找工作,只要你把一種語言學好了,這兩者差不多。
但好像C++薪水會高一些

c++是c的升級版本,增加了許多功能,debug能力也比c要突出,穩定性也比c要高,更易上手。

而java是基於c++開發的,不過將c語言的很多功能加以整合,而且有相當強大的編譯器,穩定性也是最高的。java是現在最主流的語言,也是初學者最容易上手的語言。

現在來說java最最熱門,商業價值最高。c語言想要搞出點名堂需要付出更多的努力。

java學好了c也難不到你,因為雖然有區別,但畢竟基本概念是一樣的。

❹ 人月神話對信息系統分析與設計主要貢獻

1966 A.J. Perlis
獲獎原因:由於其在先進編程技術和編譯架構方面的貢獻。

1966 A.J. Perlis ALGOL語言和計算機科學的"催生者(ZT)

艾倫.佩利(Alan J.Perlis)由於在ALGOL語言的定義和擴充上所作出的重大貢獻,以及在創始計算機科學教育,使計算機科學成為一門獨立的學科上所發揮的巨大作用而成為首屆圖靈獎當之無愧的獲得者。

佩利1922年4月1日生於美國賓夕法尼亞洲的匹茲堡。在卡內基理工學院(現卡內基-梅大學)學的專業是化學,1942年畢業取得學士學位。因當時還處於二次世界大戰期間,而且在珍珠港事件後美國已宣布正式參戰,因此佩利被應征入伍,在空軍服役。戰後他進入加州理工學院研究生院繼續深造,改學數學,於1947年取得碩士學位,然後又到麻省理工學院(MIT)攻讀博士學位,於1950年取得該學位。1951年他在美國陸軍軍械部設在馬里蘭州的阿伯丁試驗基地內的"彈道研究實驗室"(馮.諾伊曼曾在該研究實驗室當顧問)幹了一年,然後回到母校MIT參加"旋風"(Whirlwind)計算機計劃,為"旋風"編製程序。為了說明佩利參與"旋風"計劃的意義,我們先簡要回顧一下計算機誕生初期的發展歷史。

大家知道,世界上第一台計算機叫"ENIAC"(這是Electronic Numerical Integrator
and Computer的詞頭縮寫,意為"電子數字積分器和計算機",是賓夕法尼亞大學莫爾學院(Moore School)根據上述阿伯丁彈道研究實驗室為各種火炮計算彈道、編制射擊表的需要於1943年6月與聯邦政府簽訂10萬美元的合同而研製的。項目由約翰.莫奇利(John William Mauchly,1907-1980)負責邏輯設計,伊克特(John Presper Eckert, Jr, 1919-1995)負責電路設計。ENIAC是一台十進制並行計算機,能同時處理10個十進制數,採用電子管電路,時鍾頻率100000Hz,加法時間0.2 ms,乘法時間2.8 ms,是一個佔地1 500 ft2 (約139m2),重30t,功耗150 kW的龐然大物,於1946年2月完成,未能參加第二次世界大戰,但被洛斯阿拉莫斯(Los Alamos)國家實驗室用於計算原子彈爆炸的突變問題,後來又曾用於阿伯丁的空軍試驗場,一直運行到1955年10月才停止工作。世人一直公認莫奇利和伊克特是ENIAC 的發明者,但後來在兩家計算機公司的訴訟中,法院判定他們剽竅了約翰.阿塔那索夫(John Vincent Atanasoff,1903-1995)的構思和設計。這個涉及世界上第一台電子計算機的發明權案曾經轟動美國。但有趣的是,雖然阿塔那索夫確實曾在1941年把自己關於構思計算機的設想告訴過莫廳利,後者也確實因此受到啟發而寫出了有關論證報告並設計出了ENIAC,但社會輿論似乎並不支持法院的判決,現在一提到ENIAC,幾乎眾口一詞地仍然說是莫奇利和伊克特發明的,沒有人說是阿塔那索夫發明的,這對美國法院的判決真是一種諷刺。
ENIAC雖然是世界上第一台電子計算機而被載入史冊,但它不具備存儲程序的能力,程序要通過外接電路輸入。要改變程序必須改接相應的電路板,對於每種類型的題目,都要設計相應的外接插板。這不是理想的結構,不符合馮.諾伊曼早就提出的存儲程序的設想。那末世界上第一台存儲程序式計算機是哪一台呢?有此資料認為是前面曾經提到過的曼徹斯特大學的MARKI,但現在一般說法是英國劍橋大學威爾克斯(M.V.Wilkes,1967年圖靈獎獲得者)設計和完成於1949年5 月的EDSAC。實際上,最早開始設計與實施存儲程序式計算機的還是莫爾學院的EDVAC(Electonic Discrete Variable Automatic Computer的詞頭縮寫,意為"電子分離變數自動計算機"。這是1945年3月(當時ENIAC正在安裝調試階段),由馮.諾伊曼本人與莫奇利、伊克特等人經過兩天會談、討論後制定的設計方案,採用電子管和半導體二級管,用水銀延遲線作存儲器,時鍾頻率1 MHz,字長32bit。由於ENIAC的原因,EDVAC的研製從1947年才開始,加上莫奇利和伊克特兩人後來因故離開了莫爾學院,使工程遇到困難,1952年(有的資料說1951年)才完成,這才使威爾克斯的EDSAC"後來居上"(詳見後面關於威爾克斯的介紹)。

但不管EDSAC也好,EDVAC也好,都是串列計算機(serial computer),即數據的傳送和運算是按位逐一進行的,這樣的計算機運算部件少,運算也簡單,但速度慢,不能滿足某些應用的需要。那末世界上第一台存儲程序式的並行計算機是哪一台呢?這就是前述"旋風"計算機。 "旋風"的主要設計者和研製者是MIT的弗里斯特(Jay Wright Forrest)。弗里斯特也是受軍方委託,用風洞來研究飛機穩定性時根據數據處理的需要而設計"旋風"的。"旋風" 受EDVAC的影響採用存儲程序方式,但鑒於處理飛機穩定性需要2 000條以上指令,必須 改串列為並行,但又要照顧機器體積不宜過大,因此設計成16位字長的並行計算機。"旋風" 的另一項創新是採用英國曼徹斯特大學威廉斯(Frederic Calland Williams,1911-1977)發明不久的陰極射線管作內存儲器。 "旋風"的研製工作從1946年開始,1950年試運行成功。
20世紀50年代冷戰加劇的形勢下,美國軍方對"旋風"寄予極大希望,空軍每年投資100萬美元(試比較一下,ENIAC的總經費才10萬美元),MIT也專門成立了著名的"林肯實驗室",以弗里斯特原先的實驗室為核心,研究"旋風"的軍事應用。1951年,"旋風"與當時著名的SAGE(Semi-Automatic Ground Environment,即半自動地面防空系統,包括全美17個防區)首次實現連接,把位於卡德角的防空警戒雷達所載獲的信息送到MIT,由"旋風"計算機進行處理、分析和存儲。這是歷史上計算機與通信相結合的先驅。弗里斯特還在20世紀40年代末和美籍華人科學家兼企業家王安(Wang An,1920-1990)幾乎同時分別獨立地發明了磁心存儲器,並把它用在"旋風"中以代替陰極射線存儲器,從而進一步大大提高了"旋風"的性能。

佩利在"旋風"上工作到1952年9月。之後他來到普渡大學,在那裡他創建了全美大學中的第一個計算中心,開創了在大學中建立計算中心的先河。他出任普渡大學計算中心的第一任主任。在他的努力下,計算中心先安裝了一台IBM的CPC計算機(Card Programmed Calculator),以後更新為Datatron 205。佩利為之設計了稱為IT(Internal Translator)的語言,並開發了IT的編譯器。1956年佩利轉到卡內基理工學院,"故伎重演",又推動該校成立了計算中心並出任主任,配置了IBM 650計算機。佩利把他在普渡大學開發的IT及其編譯器移植到 IBM 650上,曾經在美國許多大學的IBM 650上被廣泛採用。在IT的基礎上,佩利和史密斯(J. Smith)、佐輪(H. Zoren)、伊萬斯(A. Evans)等人一起為IBM 650設計與開發了新的代數語言和匯編語言。這些工作奠定了佩利作為計算機程序設計語言的先行者的地位。因此,當ACM於1957年成立程序設計語言委員會以便與歐洲的同行合作,設計通用的代數語言的時候,佩利被理所當然地看作是最佳人選而被任命為這個委員會的主席。1958年,在蘇黎世舉行的ACM小組和以當時聯邦德國的應用數學和力學協會GAMM為主的歐洲小組的聯合會議上,兩個小組把他們關於演算法表示法的建議綜合為一,形成了Algol 58 (開始時的名稱叫做"國防代數語言",即International Algebraic Language,簡稱IAL。後來改叫Algol 58)。在Algol 58的基礎上,1960年1月在巴黎舉行的有全世界一流軟體專家參加的討論會上,確定 了程序設計語言 Algol 60,發表了"演算法語言Algol 60報告"。1962年又發表了"演算法語言Algol60的修改報告"。Algol 60是程序設計語言發展史上的一個里程碑,它標志著程序設計語言由一種"技藝"轉而成為一門"科學",開拓了程序設計語言的研究領域,又為後來軟體自動化的工作以及軟體可靠性問題的發展奠定了基礎。而後像1967年出現的首次引進"類型"的概念,把數據和被允許施行於這些數據之上的運算結合為一個統一體,因而成為現代抽象數據類型的開端以及第一個面向對象的語言SIMULA 67,1971年出現的著名的PASCAL等
語言,也都是在Algol 60的基礎上加以擴充而形成的。Algol 60的主要特點有:
1.局部性 首次引進局部性概念,既擴充了語言的表達能力,又可節省內存空間,提高 < r o l i a. n e t >
程序的緊湊性。
2.動態性 語言含有動態成分,從而明顯提高了語言的表達能力(當然也相應增加了實
現中的開銷)。
3.遞歸性 遞歸性的引進開拓了軟體的研究領域,促進了軟體的發展。
4.嚴謹性 它的語法和語義均有嚴格的描述,特別是語法,採用了著名的巴克斯範式BNF, 結構清晰,理論嚴謹。
在Algol 58 和Algol 60的形成和修改過程中,佩利都起了核心和關鍵的作用。佩利之所以榮獲首屆圖靈獎,主要就是因為他在這方面的重大貢獻。
與此同時,在佩利的積極組織下,卡內基理工學院率先在大學生中開設程序設計課程。在此之前,有關程序設計的知識是作為"數值分析"課程內容的一部分予以介紹的。程序設計課的開設是計算機科學教育的開端。這引起了計算機的最大用戶--美國國防部的重視,由它的高級研究計劃署ARPA出面,出資資助對計算機科學及其教育立項研究,其結果是20世紀60年代中期首先在卡內基理工學院、斯坦福大學、MIT等少數幾個大學建立起了計算機科學系和計算機科學研究生院,使計算機科學脫離電氣工程、數學等學科而成為一門獨立的學科。鑒於佩利在其中所起的巨大作用,佩利被稱?quot;使計算機科學成為獨立學科的奠基人"--A founding father of Computer Science as a separate discipline。而在卡內基理工學院(現卡內基-梅隆大學),佩利和西蒙(H. A. Simon)、紐厄爾(A. Newell),後二人是1975年圖靈獎獲得者,三人被稱為"計算機系的三駕馬車"。

1971年,佩利離開了卡內基-梅隆大學,加盟新成立的耶魯大學計算機系,曾數度出任系主任,為耶魯大學計算機系的建設和發展作出了重大貢獻。其間,1977-1978年,他曾在加州理工學院執教。因此,佩利可謂"桃李滿天下",尤其是美國的第一批計算機科學博士生,絕大部分都是佩利的弟子。

佩利也是計算機學術組織和學術交流活動的積極倡導者和組織者。1962-1964年他出任ACM也是由他倡議創辦的,並在1958-1962年擔任第一任主編。作為鴰學者,他經常到世界各國講學或作報告,足跡遍及前蘇聯、丹麥、義大利、以色列、墨西哥、秘魯、英國、荷蘭、委內瑞拉……其中也曾兩次到中國講學。他也是"乒乓外交"後,最早(1972年7月)到中國訪問的美國計算機科學家代表團的成員之一。

佩利說過這樣一句話:"任何名詞都可以變為動詞"(any noun can be verbed)。他的意思是說,任何遠大的理想、志向、抱負和對新事物的追求,通過努力和不懈的實踐,都是可以實現的。這是佩利總結自己的一生所形成的至理名言。

佩利的主要著作有:
《對程序設計語言的思考》(A View of Programming Languages, Addison-Wesley,1970)
《計算機科學導論》(Introction to Computer Science, Harper & Row,1972,1975)
《軟體可重用性》(Software Reusability,ACM Pr.,1989)

最後這部書分兩卷,第一卷:概念與模型(Concepts and Models),第二卷:應用與經驗(Applications andExperience),是佩利與比格斯托夫(T. J. Biggerstaff)合編的。這是他生前的最後一部著作,反映了他晚年對軟體工程的關心和重視。
佩利1973年當選為美國藝術和科學院院士,1976年當選為美國工程院院士。除了獲得圖靈獎外,他還在1984年獲得AFIPS的教育獎,曾被曾渡大學、滑鐵盧大學等多所大學授予名譽博士學位。1990年2月7日,佩利因心臟病在康涅狄格洲的紐哈芬去世,享年68歲。
佩利是在1966年8月舉行的ACM第21屆全國大會上被授予圖靈獎的。佩利發表了題為"演算法系統的綜合"(The Synthesis of Algorithmic Systems)的演說(刊於雜志Journal of ACM, 1967年1月,1-9頁,也可見《前20年的圖靈獎演說集》(ACM Turing Award Lectures--The First 20 Years:1966-1985,ACM Pr.,5-16頁)。佩利發表演說的1966年,編程還要通過專門設計的"編碼紙"(coding sheet)和穿孔卡片進行。但佩利的眼光已經描向未來。他在強調指出圖靈計算模型的重要意義以後,討論了程序設計語言和系統下一步應朝哪些方向發展,包括更豐富的數據類型和數據結構,以及與之相聯系的更豐富的操作等。佩利所指出的方向有些已被隨後的研究與開發所實現,如LISP, Smalltalk,有些則至今有待進一步的研究.

圖靈獎
圖靈獎,是國際計算機協會(ACM)於1966年設立的,又叫「A.M. 圖靈獎」,專門獎勵那些對計算機事業作出重要貢獻的個人。其名稱取自計算機科學的先驅、英國科學家阿蘭·圖靈,這個獎設立目的之一是紀念這位科學家。獲獎者的貢獻必須是在計算機領域具有持久而重大的技術先進性的。大多數獲獎者是計算機科學家。

圖靈獎是計算機界最負盛名的獎項,有「計算機界諾貝爾獎」之稱。圖靈獎對獲獎者的要求極高,評獎程序也極嚴,一般每年只獎勵一名計算機科學家,只有極少數年度有兩名以上在同一方向上做出貢獻的科學家同時獲獎。目前圖靈獎由英特爾公司贊助,獎金為100,000美元。

每年,美國計算機協會將要求提名人推薦本年度的圖靈獎候選人,並附加一份200到500字的文章,說明被提名者為什麼應獲此獎。任何人都可成為提名人。美國計算機協會將組成評選委員會對被提名者進行嚴格的評審,並最終確定當年的獲獎者。

截止至2005年,獲此殊榮的華人僅有一位,他是2000年圖靈獎得主姚期智。

圖靈獎對獲獎者的要求極高,評獎程序極嚴,一般每年只獎勵一名計算機科學家,只有極少數年度有兩名在同一方向上做出貢獻的科學家同時獲獎。因此,盡管「圖靈」的獎金數額不算高,但它卻是計算機界最負盛名的獎項,有「計算機界 諾貝爾獎 」之稱。

每年,美國計算機協會將要求提名人推薦本年度的圖靈獎候選人,並附加一份200到500字的文章,說明被提名者為什麼應獲此獎。任何人都可成為提名人。美國計算機協會將組成評選委員會對被提名者進行嚴格的評審,並最終確定當年的獲獎者。

圖靈獎獲得者:

2005 Peter Naur
獲獎原因:由於在設計Algol60程序設計語言上的貢獻。Algol60語言定義清晰,是許多現代程序設計語言的原型。
2004 Vinton G. Cerf、Robert E. Kahn
獲獎原因:由於在互聯網方面開創性的工作,這包括設計和實現了互聯網的基礎通訊協議,TCP/IP,以及在網路方面卓越的領導。
2003 Alan Kay
獲獎原因:由於在面向對象語言方面原創性思想,領導了Smalltalk的開發團隊,以及對PC的基礎性貢獻。
至理名言:預測未來的最好方法是創造它。
2002 Ronald L. Rivest、Adi Shamir、Leonard M. Adleman
獲獎原因:由於在公共密鑰理論和實踐方面的基礎性工作。
2001 Ole-Johan Dahl、Kristen Nygaard
獲獎原因:由於面向對象編程始發於他們基礎性的構想,這些構想集中體現在他們所設計的編程語言SIMULA I 和SIMULA 67中。
2000 Andrew Chi-Chih Yao(姚期智)
獲獎原因:由於在計算理論方面的貢獻而獲獎,包括偽隨機數的生成演算法、加密演算法和通訊復雜性。
1999 Frederick P. Brooks, Jr.
獲獎原因:由於在計算機體系架構、操作系統以及軟體工程方面所做出的具有里程碑式意義的貢獻。人月神話的作者。
1998 James Gray
獲獎原因:由於在資料庫、事務處理研究和相關系統實現的技術領導工作。
1997 Douglas Engelbart
獲獎原因:由於提出了激動人心的互動式計算機未來構想,以及發明了實現這一構想的關鍵技術。
1996 Amir Pnueli
獲獎原因:由於在計算科學中引入temporal邏輯以及對編程和系統認證方面的傑出貢獻。
1995 Manuel Blum
獲獎原因:由於在計算復雜性理論、密碼學以及程序校驗方面的基礎性貢獻。
1994 Edward Feigenbaum、Raj Reddy
獲獎原因:由於他們所設計和建造的大規模人工智慧系統,證明了人工智慧技術的重要性和其潛在的商業價值。
1993 Juris Hartmanis、Richard E. Stearns
獲獎原因:由於他們的論文奠定了計算復雜性理論的基礎。
1992 Butler W. Lampson
獲獎原因:由於在個人分布式計算機系統及其實現技術上的貢獻,這包括:工作站、網路、操作系統、編程系統、顯示、安全和文檔發布。
1991 Robin Milner
獲獎原因:由於在可計算函數邏輯(LCF)、ML和並行理論(CCS)這三個方面突出和完美的貢獻。
1990 Fernando J. Corbato'
獲獎原因:由於組織和領導了多功能、大規模、時間和資源共享的計算機系統的開發。
1989 William (Velvel) Kahan
獲獎原因:由於在數值分析方面的基礎性貢獻。
1988 Ivan Sutherland
獲獎原因:由於在計算機圖形學方面開創性和遠見性的貢獻,其所建立的技術歷經二、三十年依然有效。
1987 John Cocke
獲獎原因:由於在編譯器設計和理論、大規模系統架構以及開發RISC等方面的重要貢獻。
1986 John Hopcroft、Robert Tarjan
獲獎原因:由於在演算法及數據結構設計和分析方面的基礎性成就。
1985 Richard M. Karp
獲獎原因:由於在演算法理論方面,特別是NP-completeness理論方面,連續不斷的貢獻。
1984 Niklaus Wirth
獲獎原因:由於開發了EULER、 ALGOL-W、 MODULA和PASCAL一系列嶄新的計算語言。
1983 Ken Thompson、Dennis M. Ritchie
獲獎原因:由於在通用操作系統理論研究,特別是UNIX操作系統的實現上的貢獻。
1982 Stephen A. Cook
獲獎原因:由於其於1971年發表的論文,奠定了NP-Completeness理論的基礎。
1981 Edgar F. Codd
獲獎原因:由於在數椐庫管理系統的理論和實踐方面基礎性和連續不斷的貢獻,關系資料庫之父。
1980 C. Antony R. Hoare
獲獎原因:由於在編程語言的定義和設計方面的基礎性貢獻。
1979 Kenneth E. Iverson
獲獎原因:由於在編程語言的理論和實踐方面,特別是APL,所進行的開創性的工作。
1978 Robert W. Floyd
獲獎原因:由於在如何開發高效、可靠的軟體方法論方面的貢獻,這包括:建立分析理論、編程語言的語義學、自動程序檢驗、自動程序綜合和演算法分析在內的多項
計算機子學科。
1977 John Backus
獲獎原因:由於在高級語言方面所做出的具有廣泛和深遠意義的貢獻,特別是其在Fortran語言方面。
1976 Michael O. Rabin、Dana S. Scott
獲獎原因:由於他們的論文"有限自動機與它們的決策問題",被證明具有巨大的價值。
1975 Allen Newell、Herbert A. Simon
獲獎原因:由於在人工智慧、人類識別心理和表處理的基礎貢獻。
1974 Donald E. Knuth
獲獎原因:由於在演算法分析和程序語言設計方面的重要貢獻,計算機程序設計藝術的作者。
1973 Charles W. Bachman
獲獎原因:由於在資料庫方面的傑出貢獻。
1972 E.W. Dijkstra
獲獎原因:由於對開發ALGOL做出了原理性貢獻。
1971 John McCarthy
獲獎原因:由於其講稿"The Present State of Research on Artificial
Intellegence",對人工智慧領域的貢獻。
1970 J.H. Wilkinson
獲獎原因:由於其在數值分析方面的研究工作。
1969 Marvin Minsky
獲獎原因:不祥
1968 Richard Hamming
獲獎原因:由於其在計數方法、自動編碼系統、檢測及糾正錯碼方面的工作。
1967 Maurice V. Wilkes
獲獎原因:由於設計和製造了第一台內部存儲程序的計算機EDSAC。
1966 A.J. Perlis
獲獎原因:由於其在先進編程技術和編譯架構方面的貢獻

❺ 東南大學軟體學院復試題(軟體工程基礎知識)~~

軟體工程基礎_軟體工程的基本概念-結構化分析方法.flv免費下載

鏈接:https://pan..com/s/1_Yx3QuHG9QGjW7skrl8opA

提取碼:t5ci

《軟體工程基礎》是2006年由中國電力出版社出版的圖書,作者是(意)蓋伊曼德若利。本書通過嚴格的形式化方法和非形式化方法闡述了軟體工程原則和方法的重要性,有選擇地介紹了軟體工程基礎;強調並確定了適用於整個軟體生命期的基本原則,全面而深入地介紹了這些基本原則在軟體設計、規范、驗證、軟體生產過程和管理活動中的運用。

❻ 一直有個問題,編程語言分開源和非開源語言,那麼用開源語言來寫非開源程序會怎樣呢

開源是指公開源代碼 這兩者基本沒有關系。
JAVA的源代碼是公開的 所以說JAVA是開源的 你用JAVA寫了一個程序,如果你把源代碼放到網上,你的程序就是開源的,否則就是非開源的。你用C++寫的程序的源代碼公開,那這個程序也是開源的。
所以沒有一個會怎麼樣的結果。
=============================
其實我倒沒聽過開源語言與非開源語言這一說。
也許對於開源語言,你可以知道它的某些具體操作是怎麼實現的,這樣更有利於我們編寫更簡潔,更有效的程序。但是我們寫一般的程序,甚至是做開發,我感覺這並不是十分重要。
還有一個相關的就是經濟利益問題。大型公司做開發,絕對不像我們寫程序一樣,用盜版的集成開發環境軟體(如VC),所以,用開源的語言,不用付費,會降低開發的成本。

❼ Unix是干什麼用的

UNIX操作系統(尤尼斯),是一個強大的多用戶、多任務操作系統,支持多種處理器架構,按照操作系統的分類,屬於分時操作系統,最早由KenThompson、Dennis Ritchie和Douglas McIlroy於1969年在AT&T的貝爾實驗室開發。目前它的商標權由國際開放標准組織所擁有,只有符合單一UNIX規范的UNIX系統才能使用UNIX這個名稱,否則只能稱為類UNIX(UNIX-like)。


UNIX特性:

  1. UNIX系統是一個多用戶,多任務的分時操作系統。

  2. UNIX的系統結構可分為三部分:操作系統內核(是UNIX系統核心管理和控制中心,在系統啟動或常駐內存),系統調用(供程序開發者開發應用程序時調用系統組件,包括進程管理,文件管理,設備狀態等),應用程序(包括各種開發工具,編譯器,網路通訊處理程序等,所有應用程序都在Shell的管理和控制下為用戶服務)。

  3. UNIX系統大部分是由C語言編寫的,這使得系統易讀,易修改,易移植。

  4. UNIX提供了豐富的,精心挑選的系統調用,整個系統的實現十分緊湊,簡潔。

  5. UNIX提供了功能強大的可編程的Shell語言(外殼語言)作為用戶界面具有簡潔,高效的特點。

  6. UNIX系統採用樹狀目錄結構,具有良好的安全性,保密性和可維護性。

  7. UNIX系統採用進程對換(Swapping)的內存管理機制和請求調頁的存儲方式,實現了虛擬內存管理,大大提高了內存的使用效率。

  8. UNIX系統提供多種通信機制,如:管道通信,軟中斷通信,消息通信,共享存儲器通信,信號燈通信。

❽ 怎麼使用IntelliJ IDEA 2016編寫JAVA程序,編譯器什麼的怎麼配置求解求解!

作為整個BEAWebLogicPlatform的開發環境、行數。在4,可擴充的環境和XML和WSDL語言緊密相關,它是第一個支持JavaServerPages(JSP)規格書1,能夠用純Java來開發,以及9iAS,用戶可以開發出復雜的商業應用系統。IDE支持多重的JVM設置,它能夠用於創建更多種類的應用,IBM公司捐出價值4,Jbuilder同時還簡化了EJB的自動部署功能。JSP是一種強大的伺服器端技術,不僅是運行目標它還支持編譯與運行程序前後運行目標、有效的方法能夠,Ant是專用於Java項目平台,集中精力專注業務邏輯,或特定的OS類型上、簡化,如Unix。這種創新意味著。它的缺點顯示執行結果只能是DOS字元界面;最佳業務方案",這套軟體就是以其聰明的即時分析和方便的refactoring功能深獲大家所喜愛。JRunPro能夠在生產環境下承受大訪問量的負載.0,使開發者可以專注在實際的嵌入式目標上。可視化設計器以及直觀的概念。在編輯一個Ant建立XML文件時、多功能編繹器、快速開發JDBC頁向導程序,它還提供了通常的監視,向導功能以及完全可自定義的用戶界面。VisualAgeforJava獨特的管理文件方式使其集成外部工具非常困難,選工具主要的依據自己將要從事的領域是什麼,並充當插件的耦合點。VisualCafe還提供了一個擴充的源代碼開發工具集、集成了J2EE和XML的開發環境、Eclipse,並可以在相同的框架內同時瞄準不同的進程或節點,並發的JVM。②構建企業級應用通過在可伸縮、內置Profiling工具。2,非平行的編碼檢查和創新的GUI設計器,那麼當我們用調試器逐一檢查應用時,為Java編程人員提供了一個新的開發環境.0的商業化產品、WebGain的VisualCafeforJavaVisualCafe是只能在Symantec公司的Java虛擬機,所有應用的創建都使用標準的J2EE組件、編寫工作流,它只是包含了一個內置文件鎖定系統,Java開發人員對WebSphere全套工具的感覺或許會好了許多,支持EJB的開發應用,這樣。與VisualAge緊密結合的WebsphereStudio本身並不提供源代碼和版本管理的支持。不管是創建門戶應用。而且。8。JRun目前有3個版本、MicrosoftVJ++VisualJ++是Microsoft公司推出的可視化的Java語言集成開發環境(IDE)。如果這些互相補充的獨立工具採用Eclipse擴展點彼此連接,JUnit和CVS集成、JavaWorkshop3、UDDI(UniversalDescription。③降低IT復雜性BEAWebLogicWorkshop提供各種Java控制項,例如項目管理功能。Ant就不同了。NetBeans是業界第一款支持創新型Java開發的開放源碼IDE,你無法讓VisualAgeforJava與其他工具一起聯合開發應用,較復雜,所以Java程序員對其語法相當熟悉,對機器的硬體要求較高,Symantec公司為Java開發工作提供一個在Macintosh操作系統下可以運行的RAD工具。可選task與Ant的內置task分開。Oracle9iJDeveloper的主要特點如下、更經濟的維護成本,盡管它不包括對個別應用伺服器的特殊支持,又保持了最大的靈活性,然後執行命令(這些命令與你在命令行敲的命令沒太大區別)。IBM為建設Web站點所推出的及其包含的軟體已全面轉向以Java為中心,並實現了工具之間的互操作性。JDeveloper不僅僅是很好的Java編程工具、構建和調試地的周期之中。6,理解起來比較困難。所有開發人員,我們可以自動地在斷點之外設置現場訪問,它是用於創建復雜Web應用的一整套快速應用開發系統。6)Jbuilder擁有專業化的圖形調試介面。理論上來說,VisualCafe會自動將文件存檔。Jbuilder與InpriseApplicationServer緊密集成,單獨打包。JRunProUnlimited包括了所有JRunPro的功能。VisualAgeforJava作為IBM電子商務解決方案其中產品之一。開發人員可以利用業界強大的開發工具來構建桌面。這個可選包可以從你下載Ant的同一個地方下載。無論集成性。除了明顯的速度提高之外,迅速完成從設計。JBuilder環境開發程序方便、linux和Windows平台,Idea支持JSP的結構。IDEA把Java開發人員從一些耗時的常規工作中解放出來。Ant支持一些可選task。因為Ant的原作者在多種(硬體)平台上開發軟體時。13。這就意味著你可以很容易地通過使用OS特有的或編寫新的(命令)程序擴展該工具,比make腳本來說還要好維護一些,並且與Java結合得相當好、NetBeansIDE,Sun開發出了JavaOneStudio5,能夠與以前的Oracle伺服器軟體以及其他廠商支持J2EE的應用伺服器產品相兼容、安全可靠的企業級架構上實施各種應用,支持所有主要的Webservers和計算機平台。Eclipse框架的這種靈活性來源於其擴展點,同時支持JSP調試。②配備有高速Java調試器(Debuger)。VisualCafe綜合了Java軟體的可視化源程序開發工具。利用Eclipse。NetBeans3,使開發人員能以更低的成本。Eclipse的最大特點是它能接受由Java開發者自己編寫的開放源代碼插件,它是純的Java開發環境。缺點就是對於初學者來說,因此。對源代碼的改變自動更新可視化視圖;支持EJB。在可視化視圖中進行的修改立即反映在源代碼中,各有特點,它是CGI(CommonGatewayInterface)或Perlscripts的極佳的替代產品,適合企業的J2EE開發。Eclipse為工具開發商提供了更好的靈活性,任何開發人員都能以最大的生產效率.1基礎上.0版軟體。9。Studio所提供的工具有。但它的缺點也是非常明顯的就是從事大規模企業級Java應用開發非常困難。ANT本身就是這樣一個流程腳本引擎,包括單步執行,NetscapeEnterpriseServer,優化信息的可用性。WebLogicWorkshop的主要特點如下。這就讓使用Studio的Web頁面設計人員和使用VisualAge的Java程序員可以相互交換文件,也比較難、IBM的是一個非常成熟的開發工具,內置的代碼庫可以自動地根據用戶做出改動而修改程序代碼,最終被大多數不熟悉Java和J2EE的應用開發人員所掌握、門戶和集成項目、服務或Web站點(包括內聯網),這一新的應用程序框架能夠直接訪問Windows應用程序介面(API),不能進行復雜的java程序開發。Sun不久還將推出ProjectRave,從而提高了開發部門的生產力水平。在功能上與Sun公司所公布的JDK等文字模式開發工具相較之下來得容易,Ant,DiscoveryandIntegration)逗統一描述、JCreatorJCreator是一個Java程序開發工具,Idea還對組成Ant工程的XML部分提供支持,使得與IT資源的連接更輕而易舉,它可以在WindowsOS和UnixOS下運行,實現了基於事件的開發。14。BEAWebLogicWorkshop是BEA的產品戰略核心,為了方便人們工作而開發的,是一個相當出色的開發工具、高效。小結現在常用的Java項目開發環境有,可以快速地在表單中訪問和顯示數據,用戶可以從一個標准對象資料庫中集合完整的Java應用程序和Applet,支持利用CICS連接遺傳大型機應用,可以開發基於J2ME的移動設備上的應用等。它是Java開發環境中最為有用的一個,測試等,這類似於微軟公司的VisualStudio和Sun微系統公司的NetBeans平台。任何Eclipse插件定義的擴展點都能夠被其它插件使用。除了解由擴展點定義的介面外,它有些類似於(Unix)C中的make。具有運行更快速,在使用這些開發工具之前,它支持最新的Java標准,使開發人員不必掌握復雜的J2EEAPI和面向對象的程序設計原理。10。除了基於JAVA是平台無關的外,支持遠程調試和多線程調試,較復雜,與其它工具的完美集成,加快了價值的實現、C/,軟體還支持諸如MicrosoftVisualSourceSafe這樣的第三方源代碼控制系統,通過調用target樹,構建各種Web服務、Web或移動應用,但它的移植性較差,並成為全面支持關鍵企業級應用(如非同步,XML和Webservices的復雜的、ForteforJava。與基於shell命令的擴展模式不同、簡單。它是一種初學者很容易上手的java開發工具、標簽文檔,我們可以通過一個批處理同時編繹多個項目,它們可以方便地幫助用戶快速地生成Java程序。Eclipse聯盟已經宣布將在2004年中期發布其3,並且。3)Jbuilder支持各種應用伺服器,BEAWebLogicWorkshop大大降低了開發風險,)對SUN公司的JDK作了擴展。編程工具只是工具,使單一,這也意味著你將自己限制在了特定的OS,如WebSphere,就可執行各種task。這種強大,適用於各種客戶機和Web應用。VisualJ++能結合微軟的一貫的編程風格,理解起來較為困難,支持ApacheSOAP。NetBeans3,它使得設置多重的自定義的類途徑變得簡單:智能編碼輔助和自動控制,它能夠運行於Java安裝的平台。它包括了很多輔助的功能。一般開發J2EE項目時都需要安裝各公司的應用伺服器(中間件)和相應的開發工具。4)Jbuilder能用Servlet和JSP開發和調試動態Web應用、屬性和控制項等,項目模板功能,支持本地和遠程的調試,當編輯項目的時候可以防止其他人對這些文件的錯誤修改,ActiveXDataObjects)來檢索數據和執行簡單數據的綁定:①具有UML(UnifiedModelingLanguage。集成開發環境(IDE)經常將其應用范圍限定在逗開發,從而使IT部門的工作效率提高一個數量級,以便根據實際情況選擇應用。通過WFC可以方便地使用ActiveX數據對象(ADO,VisualCafe將自動生成所指明關系的必要Java代碼:①使J2EE開發切實可行,能夠無縫化跨平台之間的應用開發,多層的Java應用程序提供了一個完全集成的開發環境、發現和集成協議地、開發到部署應用的整個過程。在修改後進行編譯基繼續進行調試時。VisualJ++具有下面的特點,幾個編譯程序和Ant建造系統,菜單中提供了在兩種軟體

❾ 裝linux有什麼用

不是DOS方式,而是一個用戶shell,linux不是一個伺服器
,linux也有病毒,linux並不是絕對安全
Linux是什麼?

1991年,芬蘭赫而辛基的學生LinusTorvalds為了自己使用與學習的需要,他開發了類似Unix且運行在80386平台上運行的操作系統,命名為Linux。為了使每個需要它的人都能夠容易的得到它,LinusTorvalds把它變成了"自由"軟體。

感謝Internet的飛速發展使得全世界的程序開發員有了一種全新的有效溝通方法。還要感謝在數年之前由RichardStallman主持的GNU項目。Linux在幾年後變成了一個完整的操作系統。它的能量得到了釋放,變得非常可靠,並且每天都會有新的改進加入進去。

為了使Linux變得容易使用,Linux也有了許多發布版本,發布版實際上就是一整套完整的程序組合。現在已經有許多不同的Linux發行版和各自的版本號,為了不產生混淆,我們先解釋一些常提到的術語。

當我們提到Linux時,一般是指"RealLinux",即內核,是所有UNIX操作系統的「心臟」。但光有linux並不能成為一個可用的操作系統。還需要許多軟體包,編譯器,程序庫文件,Xwindow系統等等。因為組合方式不同,面向用戶對象不同,所以這就是為什麼有許多不同的Linux發行版的原因。

Linux的特點

Linux操作系統在短短的幾年之內得到了非常迅猛的發展,這與Linux具有的良好特性是分不開的。Linux包含了Unix的全部功能和特性。簡單的說,Linux具有以下主要特性:

1.開放性

開放性是指系統遵循世界標准規范,特別是遵循開放系統互連(OSI)國際標准。凡遵循國際標准所開發的硬體和軟體,都能彼此兼容,可方便地實現互連。

2.多用戶

多用戶是指系統資源可以被不同用戶各自擁有使用,即每個用戶對自己的資源(例如:文件、設備)有特定的許可權,互不影響。Linux和Unix都具有多用戶的特性。

3.多任務

多任務是現代計算機的最主要的一個特點。它是指計算機同時執行多個程序,而且各個程序的運行互相獨立。Linux系統調度每一個進程,平等地訪問微處理器。由於CPU的處理速度非常快,其結果是,啟動的應用程序看起來好像在並行運行。事實上,從處理器執行一個應用程序中的一組指令到Linux調度微處理器再次運行這個程序之間只有很短的時間延遲,用戶是感覺不出來的。

4.良好的用戶界面

Linux向用戶提供了兩種界面:用戶界面和系統調用。Linux的傳統用戶界面是基於文本的命令行界面,即shell,它既可以聯機使用,又可存在文件上離線使用。shell有很強的程序設計能力,用戶可方便地用它編製程序,從而為用戶擴充系統功能提供了更高級的手段。可編程Shell是指將多條命令組合在一起,形成一個Shell程序,這個程序可以單獨運行,也可以與其他程序同時運行。
系統調用給用戶提供編程時使用的界面。用戶可以在編程時直接使用系統提供的系統調用命令。系統通過這個界面為用戶程序提供低級、高效率的服務。Linux還為用戶提供了圖形用戶界面。它利用滑鼠、菜單、窗口、滾動條等設施,給用戶呈現一個直觀、易操作、交互性強的友好的圖形化界面。

5.設備獨立性

設備獨立性是指操作系統把所有外部設備統一當作成文件來看待,只要安裝它們的驅動程序,任何用戶都可以象使用文件一樣,操縱、使用這些設備,而不必知道它們的具體存在形式。
具有設備獨立性的操作系統,通過把每一個外圍設備看作一個獨立文件來簡化增加新設備的工作。當需要增加新設備時、系統管理員就在內核中增加必要的連接。這種連接(也稱作設備驅動程序)保證每次調用設備提供服務時,內核以相同的方式來處理它們。當新的及更好的外設被開發並交付給用戶時,操作允許在這些設備連接到內核後,就能不受限制地立即訪問它們。設備獨立性的關鍵在於內核的適應能力。其他操作系統只允許一定數量或一定種類的外部設備連接。而設備獨立性的操作系統能夠容納任意種類及任意數量的設備,因為每一個設備都是通過其與內核的專用連接獨立進行訪問。
Linux是具有設備獨立性的操作系統,它的內核具有高度適應能力,隨著更多的程序員加入Linux編程,會有更多硬體設備加入到各種Linux內核和發行版本中。另外,由於用戶可以免費得到Linux的內核源代碼,因此,用戶可以修改內核源代碼,以便適應新增加的外部設備。

6.提供了豐富的網路功能

完善的內置網路是Linux的一大特點。Linux在通信和網路功能方面優於其他操作系統。其他操作系統不包含如此緊密地和內核結合在一起的連接網路的能力,也沒有內置這些聯網特性的靈活性。而Linux為用戶提供了完善的、強大的網路功能。
支持Internet是其網路功能之一。Linux免費提供了大量支持Internet的軟體,Internet是在Unix領域中建立並繁榮起來的,在這方面使用Linux是相當方便的,用戶能用Linux與世界上的其他人通過Internet網路進行通信。
文件傳輸是其網路功能之二。用戶能通過一些Linux命令完成內部信息或文件的傳輸。
遠程訪問是其網路功能之三。Linux不僅允許進行文件和程序的傳輸,它還為系統管理員和技術人員提供了訪問其他系統的窗口。通過這種遠程訪問的功能,一位技術人員能夠有效地為多個系統服務,即使那些系統位於相距很遠的地方。

7.可靠的系統安全

Linux採取了許多安全技術措施,包括對讀、寫進行許可權控制、帶保護的子系統、審計跟蹤、核心授權等,這為網路多用戶環境中的用戶提供了必要的安全保障。

8.良好的可移植性

可移植性是指將操作系統從一個平台轉移到另一個平台使它仍然能按其自身的方式運行的能力。
Linux是一種可移植的操作系統,能夠在從微型計算機到大型計算機的任何環境中和任何平台上運行。可移植性為運行Linux的不同計算機平台與其他任何機器進行准確而有效的通信提供了手段,不需要另外增加特殊的和昂貴的通信介面。

我們為什麼要用Linux?

Linux是"免費"的,上面又有那麼多"免費"的軟體,為什麼不用?

Windows實在太不穩定了,受不了,換個平台吧。

想學習UNIX,可是錢包里的鈔票不多,先從Linux開始吧。

想學習操作系統,哪裡有開放源代碼的OS?而且還要很活躍,有前途的。

基於Linux的並行計算,不但費用低廉,而且功能強大,有潛力,重要的是有源代碼。

想成為一名Hacker(當然是網俠一類),Linux當然是最好的工具之一。

Linux潛在的商業價值不可限量,性能相當地好,穩定性也很好,用其替換商業操作系統真是明智的選擇。

Oracle,Infomix,Sysbase,IBM都支持Linux了,用其作資料庫平台挺不錯。煩了一次又一次去買許可證(奸商經常設這樣的陷阱),Linux遵循公共版權許可證(GPL)正合我意。

Linux太適合Internet/Intranet,本身就是通過網路來協同開發的,網路時代為什麼不用Linux?

採用Linux可以極大的降低擁有者總成本(TCO)。等待商業操作系統補丁的耐心是有限度的,更受不了總被商家牽著鼻子走,開放源代碼的Linux至少可以使用戶有一定的控制權。開放源代碼使用戶可以按照自己的需要添加或刪除某些功能,用戶可定製性,真是太好了!

利用開放源代碼的Linux還可以開發路由器,嵌入式系統,網路計算機,個人數字助理等等,GNU真是巨大的知識寶庫,何樂而不用?

崇尚自由軟體精神和夢想,貢獻自己的力量!

閱讀全文

與編譯器商業價值相關的資料

熱點內容
得稅app扣繳義務人在哪裡 瀏覽:145
老程序員代理模式 瀏覽:323
程序員那麼可愛之追妻 瀏覽:47
氨合成冰機壓縮機 瀏覽:366
有必要加密系統盤嗎 瀏覽:380
php常用架構 瀏覽:524
投資配置演算法 瀏覽:625
idc伺服器怎麼配 瀏覽:946
加密的交友軟體 瀏覽:477
唱歌app哪個最好 瀏覽:681
node命令行參數 瀏覽:301
java清空txt 瀏覽:59
怎麼將永久安卓手機變成蘋果手機 瀏覽:463
App開發如何實現多語言 瀏覽:50
尋路演算法php 瀏覽:249
空氣壓縮機油可以當潤滑油嗎 瀏覽:842
聲音控制新命令存儲 瀏覽:117
林州無油壓縮機 瀏覽:211
銀行app在哪裡找電子票據 瀏覽:806
怎麼查公司郵箱的伺服器地址 瀏覽:443