畢業(yè)論文外文翻譯-java的歷史_第1頁
已閱讀1頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、JavaJava的歷史的歷史Duke,Java語言最開始只是太陽微系統(tǒng)(SunMicroSystems)公司在1990年12月開始研究的一個內(nèi)部項目。太陽微系統(tǒng)公司的一個叫做帕特里克諾頓的工程師被公司自己開發(fā)的C和C語言編譯器搞得焦頭爛額,因為其中的API極其難用。帕特里克決定改用Next,同時他也獲得了研究公司的一個叫做“Stealth計劃”的項目的機會?!癝tealth計劃”后來改名為“Green計劃”,詹姆斯高斯林和麥克舍林丹也加

2、入了帕特里克的工作小組。他們和其他幾個工程師一起在加利福尼亞州門羅帕克市沙丘路的一個小工作室里面研究開發(fā)新技術,瞄準下一代智能家電(如微波爐)的程序設計,太陽公司預料未來科技將在家用電器領域大顯身手。團隊最初考慮使用C語言,但是很多成員包括太陽的首席科學家比爾喬伊,發(fā)現(xiàn)C和可用的API在某些方面存在很大問題。工作小組使用的是內(nèi)嵌類型平臺,可以用的資源極其有限。很多成員發(fā)現(xiàn)C太復雜以至很多開發(fā)者經(jīng)常錯誤使用。他們發(fā)現(xiàn)C缺少垃圾回收系統(tǒng),還

3、有可移植的安全性、分布程序設計、和多運行續(xù)功能。最后,他們想要一種易于移植到各種設備上的平臺。根據(jù)可用的資金,比爾喬伊決定開發(fā)一種集C語言和Mesa語言大成的新語言,在一份報告上,喬伊把它叫做“未來”,他提議太陽公司的工程師應該在C的基礎上,開發(fā)一種面向?qū)ο蟮沫h(huán)境。最初,高斯林試圖修改和擴展C的功能,他自己稱這種新語言為C,但是后來他放棄了。他將要創(chuàng)造出一種全新的語言,被他命名為“Oak”(橡樹),以他的辦公室外的橡樹命名。就像很多開發(fā)

4、新技術的秘密工程一樣,工作小組沒日沒夜地工作到了1992年的夏天,他們能夠演示新平臺的一部分了,包括Green操作系統(tǒng),Oak的程序設計語言,類庫及其硬件。最初的嘗試是面向一種類PDA設備,被命名為Star7,這種設備有鮮艷的圖形界面和被稱為“Duke”的智能代理來幫助用戶。1992年12月3日,這臺設備進行了展示。同年11月,Green計劃被轉(zhuǎn)化成了“FirstPerson有限公司”,一個太陽公司的全資子公司,團隊也被重新安排到了帕洛

5、阿爾托。FirstPerson團隊對建造一種高度交互的設備感興趣,當時代華納發(fā)布了一個關于電視機頂盒的征求提議書時(Requestfproposal),F(xiàn)irstPerson改變了他們的目標,作為對征求意見書的響應,提出了一個機頂盒平臺的提特性經(jīng)常被稱為“一次編譯,到處運行”。執(zhí)行Java應用程序必須安裝JavaRuntimeEnvironment(JRE),JRE內(nèi)部有一個Java虛擬機(JavaVirtualMachine,JVM)

6、以及一些標準的類庫(ClassLibrary)。通過JVM的虛擬機才能在電腦系統(tǒng)執(zhí)行Java應用程序(JavaApplication),這與.Framewk的情況一樣,所以電腦上沒有安裝JVM,那么這些程序?qū)⒉荒軌驁?zhí)行。實現(xiàn)跨平臺性的方法是大多數(shù)編譯器在進行Java語言程序的編碼時候會生成一個用字節(jié)碼(Bytecode)寫成的“半成品”,這個“半成品”會在Java虛擬機(解釋層)的幫助下運行,虛擬機會把它轉(zhuǎn)換成當前所處硬件平臺的原始代碼

7、。之后,Java虛擬機會打開標準庫,進行數(shù)據(jù)(圖片、線程和網(wǎng)絡)的訪問工作。主要注意的是,盡管已經(jīng)存在一個進行代碼翻譯的解釋層,有些時候Java的字節(jié)碼代碼還是會被JIT編譯器進行二次編譯。有些編譯器,比如GCJ,可以自動生成原始代碼而不需要解釋層。但是這些編譯器所生成的代碼只能應用于特定平臺。并且GCJ目前只支持部分的JavaAPI。甲骨文公司對于Java的許可是“全兼容的”,這也導致了微軟和升陽關于微軟的程序不支持RMI和JNI接口

8、、并且增加特性為己所用的法律爭端。升陽最終贏得了官司,獲得了大約兩千萬美元的賠償,法院強制要求微軟執(zhí)行升陽公司關于Java的許可要求。作為回應,微軟不再在Windows系統(tǒng)中捆綁Java,最新的Windows版本,WindowsVista和InterExpler7.0版本也不再提供對于Java應用程序和控件的支持。但是升陽公司和其他使用Java運行時系統(tǒng)的公司對于微軟的操作對用戶提供無償?shù)牡谌讲寮统绦蛑С?。Java語言使用解釋層最初

9、是為了輕巧性。所以這些程序的運行效率比C語言和C要低很多,用戶也對此頗有微詞。很多最近的調(diào)查顯示Java的程序運行速度比幾年前要高出許多,有些同樣功能的程序的效率甚至超過了C和C語言編寫的程序。Java語言在最開始應用的時候是沒有解釋層的,所有需要編譯的代碼都直接轉(zhuǎn)換成機器的原始代碼。這樣做的后果就是獲得了最佳的性能,但是程序臃腫異常。從JIT技術開始,Java的程序都經(jīng)過一次轉(zhuǎn)換之后才變成機器碼。很多老牌的第三方虛擬機都使用一種叫做“

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論