我們學(xué)習(xí)并且了解java語言,也知道最開始Java上是由sun公司開發(fā)的語言,那我們是否知道現(xiàn)在由哪個公司開發(fā)呢?Java現(xiàn)在是如此的受歡迎,那么Java的發(fā)展又是怎么樣的變化呢?
Java是由Sun Microsystems公司于1995年5月推出的Java面向?qū)ο蟪绦蛟O(shè)計語言和Java平臺的總稱。由James Gosling和同事們共同研發(fā),并在1995年正式推出。然而在2009年04月20日,甲骨文(Oracle)公司以74億美元收購Sun。取得java的版權(quán)。
Java語言的發(fā)展進程:
Java語言的誕生具有一定的戲劇性,它并不是經(jīng)過精心的策劃、制作,最后產(chǎn)生的劃時代產(chǎn)品,從某種角度來看,java語言的誕生完全是一種誤會。這又是怎么說呢?
1990年年末,Sun公司預(yù)料嵌入式系統(tǒng)將在未來家用電器領(lǐng)域大顯身手。于是Sun公司成立了一個由James Gosling領(lǐng)導(dǎo)的“Green計劃 ”,準(zhǔn)備為下一代智能家電(電視機、微波爐、電話)編寫一個通用控制系統(tǒng)。
該團隊最初考慮使用C++語言,但是很多成員包括Sun的首席科學(xué)家Bill Joy,發(fā)現(xiàn)C++和可用的API在某些方面存在很大的問題。而且工作小組使用的是嵌入式平臺,可用的系統(tǒng)資源極其有限。并且很多成員都發(fā)現(xiàn)C++太復(fù)雜,以致很多開發(fā)者經(jīng)常錯誤使用。而且C++缺少垃圾回收系統(tǒng)、可移植性、分布式和多線程等功能。
根據(jù)可用的資金,Bill Joy 決定開發(fā)一種新語言,他提議在C++的基礎(chǔ)上,開發(fā)一種面向?qū)ο蟮沫h(huán)境。于是,Gosling試圖通過修改和擴展C++的功能來滿足這個要求,但是后來他放棄了。他決定創(chuàng)造一種全新的語言:Oak.(他們都具有不將就的精神、在開發(fā)某一項科技的時候得具有資金的支持以及各種創(chuàng)新精神)
到了1992年的夏天,Green計劃已經(jīng)完成了新平臺的部分功能,包括Green操作系統(tǒng)。Oak的程序設(shè)計語言、類庫等。同年11月,Green計劃被轉(zhuǎn)化成“FirstPerson有限公司”,一個Sun公司的全資子公司。
FirstPerson團隊致力于創(chuàng)建一種高度互動的設(shè)備。當(dāng)時代華納公司發(fā)布了一個關(guān)于電視機頂盒的征求提議書時,F(xiàn)irstPerson團隊改變了他們的目標(biāo),作為對征求提議書的響應(yīng),提出了一個機頂盒平臺的提議。但是有線電視業(yè)界覺得FirstPerson的平臺給予用戶過多的控制權(quán),因此FirstPerson的投標(biāo)敗給了SGI。同時,3DO公司另外一筆關(guān)于機頂盒的交易沒有成功。此時,可憐的Green項目幾乎接近夭折,甚至Green項目的一半成員也被調(diào)到了其他的項目組。
正如中國古代的寓言所言:塞翁失馬,焉知非福?如果Green項目在機頂盒平臺投標(biāo)成功,也許就不會誕生Java這門偉大的語言了。
1994年夏天,互聯(lián)網(wǎng)和瀏覽器的出現(xiàn)不僅給廣大互聯(lián)網(wǎng)的用戶帶來了福音,也給Oak語言帶來了新的生機。Gosling立即意識到,這是一個機會,于是對Oak進行了小規(guī)模的改造,到了1994年秋,小組中的Naughton和Jonathan Payne完成了第一個Java語言的網(wǎng)頁瀏覽器:WebRunner.Sun公司實驗室主任Bert Sutherland 和技術(shù)總監(jiān)Eric Schmict 觀看了該瀏覽器的演示,對該瀏覽器的效果給予了高度評價。當(dāng)時的Oak這個商品已經(jīng)被注冊,于是只得將Oak更名為Java.
Sun公司在1995年年初發(fā)布了Java語言,Sun公司直接把Java放到互聯(lián)網(wǎng)上,免費給大家使用,甚至連源代碼也不保密,也放到互聯(lián)網(wǎng)上向所有人公開。
幾個月后,讓所有人都吃驚的事情發(fā)生了:Java成了互聯(lián)網(wǎng)上最熱門的寶貝。竟然有10萬多人次訪問了Sun公司的網(wǎng)頁,下載了Java語言。然后,互聯(lián)網(wǎng)上立即就有了數(shù)不清的Java小程序(也就Applet),演示著各種小動畫、小游戲等。
Java 語言終于眼眉吐氣了 ,成為了一種廣為人知的編程語言。
在Java語言出現(xiàn)之前,互聯(lián)網(wǎng)的網(wǎng)頁實質(zhì)上就像一張紙,不會有任何動態(tài)的內(nèi)容。有了Java語言之后,瀏覽器的功能被擴大了,Java程序可以直接在瀏覽器里運行,可以直接與遠(yuǎn)程服務(wù)器交互:用Java語言編程,可以在互聯(lián)網(wǎng)上像傳送電子郵件一樣方便地傳送程序文件!
1995年,Sun雖然推出了Java,但這只是一種語言,如果想開發(fā)復(fù)雜的應(yīng)用程序,必須要有一個強大的開發(fā)類庫。因此,Sun在1996年年初 發(fā)布了JDK1.0.這個版本包括兩部分:運行環(huán)境(即JRE)和開發(fā)環(huán)境(即JDK).運行環(huán)境包括核心API、集成API、用戶界面API、發(fā)布技術(shù)、Java虛擬機(JVM)5個部分;開發(fā)環(huán)境包括編譯Java程序的編譯器(即Javac命令)。
接著,Sun在1997年2月18日發(fā)布了JDK1.1。JDK1.1增加了JIT(即時編譯)編譯器。JIT和傳統(tǒng)的編譯器不同,傳統(tǒng)的編譯器是編譯一條,運行完成后將其扔掉;而JIT會將經(jīng)常用到的指令保存在內(nèi)存中,當(dāng)下調(diào)用時就不需要重新編譯了,通過這種方式讓JDK在效率上有了較大提升。
但一直以來,Java主要的應(yīng)用就是網(wǎng)頁上的Applet以及一些移動設(shè)備。到了1996年年底,F(xiàn)lash面世了,這是一種更加簡單的動畫設(shè)計軟件:使用Flash幾乎無須任何編程語言知識,就可以做出豐富多彩的動畫。隨后Flash增加了Actionscript編程腳本,F(xiàn)lash逐漸蠶食了Java在網(wǎng)頁上有了較大提升。
從1995年Java誕生到1998年年底,Java語言雖然成為了互聯(lián)網(wǎng)上廣泛使用的編程語言,但它并沒有找到一個準(zhǔn)確的定位,也沒有找到它必須存在的理由:Java語言可以編寫Applet,而Flash一樣可以做到,而且更快,開發(fā)成本更低。
直到1998年12月,Sun發(fā)布了Java歷史上最重要的JDK版本:JDK1.2,伴隨著JDK1.2一同發(fā)布的還有JSP/Servlet、EJB等規(guī)范,并將Java分成J2EE、J2SE和J2ME三個版本。
J2ME:主要用于控制移動設(shè)備和信息家電等有限存儲的設(shè)備。
J2SE:整個Java技術(shù)的核心和基礎(chǔ),它是J2ME、J2EE編程的基礎(chǔ),
J2EE:Java技術(shù)中應(yīng)用最廣泛的部分,J2EE提供了企業(yè)應(yīng)用開發(fā)相關(guān)的完整解決方案。這標(biāo)志著Java已經(jīng)吹響了向企業(yè)、桌面和移動三個領(lǐng)域進軍的號角,標(biāo)志著Java已經(jīng)進入Java2時代,這個時期也是Java飛速發(fā)展的時期。
在Java2中,Java發(fā)生了很多革命性的變化,而這些革命性的變化一直沿用到現(xiàn)在,對于Java的發(fā)展形成了深遠(yuǎn)的影響。知道今天還經(jīng)??吹絁2EE、J2ME等名稱。
不僅如此,JDK1.2還把它的API分成了三類。
核心API:由Sun公司制定的基本的API,所有的Java平臺都應(yīng)該提供。這就是平常所說的Java核心類庫。
可選API:這是Sun為JDK提供的擴充API,這些API因平臺的不同而不同。
特殊API:用于滿足特殊要求的API。如用于JCA和JCE等第三方加密類庫。
2002年,Sun發(fā)布了JDK歷史上最成熟的版本:JDK1.4成為發(fā)展最快的一個JDK版本。JDK1.4已經(jīng)可以使用Java實現(xiàn)大多數(shù)的應(yīng)用了。
在此期間,Java語言在企業(yè)應(yīng)用領(lǐng)域大放異彩,涌現(xiàn)出大量基于java語言的開源框架 :Struts、WebWork、Hibernate、Spring等;大量企業(yè)應(yīng)用服務(wù)器也開始涌現(xiàn):WebLogic、WebSphere、JBoss等,這些都標(biāo)志著Java語言進入了飛速發(fā)展時期。
2004年10月,Sun發(fā)布了萬眾期待的JDK1.5,同時,Sun將JDK1.5改名為Java SE5.0,J2EE、J2ME也相應(yīng)地改名為Java EE和Java ME。JDK1.5增加了諸如泛型、增強的for語句、可變數(shù)量的形參、注釋、自動拆箱和裝箱等功能;同時,也發(fā)布了新的企業(yè)級平臺規(guī)范,如通過注釋等新特性來簡化EJB的復(fù)雜性,并推出了自己的MVC框架規(guī)范:JSF,JSF規(guī)范類似于ASP.NET的服務(wù)器端控件,通過它可以快速地構(gòu)建復(fù)雜的JSP界面。
2006年12月,Sun公司發(fā)布了JDK1.6(也被稱為Java EE 6)。一直以來,Sun公司維持著大約2年發(fā)布一次JDK新版本的習(xí)慣。
但在2009年4月20日,Oracle宣布將收購Sun公司。Sun倒下了,不過Java的大旗依然獵獵作響。2011年7月28日,Oracle公司終于"如約" 發(fā)布了 Java SE 7——這次版本的升級經(jīng)過了將近5年時間。Java SE 7也是Oracle發(fā)布的第一個Java版本,引入了二進制整數(shù)、支持字符串的switch語句、棱形語法、多異常捕抓、自動關(guān)閉資源的try語言等新特性。
2014年3月18日,Oracle公司發(fā)不了Java SE8,這次版本升級為Java帶來了全新的Lambda表達式、流式編程等大量新特性,這些新特性使得Java變得更加強大。
2017年9月22日,Oracle公司發(fā)布了Java SE 9,這次版本升級強化了Java的模塊化系統(tǒng),讓龐大的Java語言更輕量化,而且采用了更高效、更智能的GI 垃圾回收器,并在核心類庫上進行了大量更新,可以進一步簡化編程;但對語法本身更新并不多(畢竟Java語言已經(jīng)足夠成熟)。
以上就是有關(guān)Java語言的介紹,是不是有種不一樣的收獲呢?是否知道為什么Java語言現(xiàn)在是絕大多數(shù)企業(yè)的開發(fā)語言呢?更多知識,請繼續(xù)關(guān)注本站。
本文鏈接:
本文章“java語言現(xiàn)在由哪個公司開發(fā)Java語言的發(fā)展過程如何”已幫助 82 人
免責(zé)聲明:本信息由用戶發(fā)布,本站不承擔(dān)本信息引起的任何交易及知識產(chǎn)權(quán)侵權(quán)的法律責(zé)任!
本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓(xùn)機構(gòu)》培訓(xùn)課程》學(xué)習(xí)資訊》課程優(yōu)惠》課程開班》學(xué)校地址等機構(gòu)信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢熱線:4008-569-579