1.1 Java演進史
作為一門長壽的編程語言,Java語言在經(jīng)歷了20多年的發(fā)展,已然成為開發(fā)者首選的利器。在最新的TIOBE編程語言排行榜中,Java位居榜首。回顧歷史,Java語言的排行也一直是名列三甲。圖1-1展示的是2019年9月TIOBE編程語言排行榜的情況(https://www.tiobe.com/tiobe-index/)。

圖1-1 TIOBE編程語言排行榜
1.1.1 Java簡史
1991年,Sun公司準(zhǔn)備用一種新的語言來設(shè)計用于智能家電類(如機頂盒)的程序開發(fā)。“Java之父”James Gosling創(chuàng)造出了這種全新的語言,并命名為“Oak”(橡樹),以他辦公室外面的樹來命名。然而,由于當(dāng)時的機頂盒項目并沒有競標(biāo)成功,于是Oak被陰差陽錯地應(yīng)用到萬維網(wǎng)。
1994年,Sun公司的工程師編寫了一個小型萬維網(wǎng)瀏覽器WebRunner(后來改名為HotJava),可以直接用來運行Java小程序(Java Applet)。1995年,Oak改名為Java。由于Java Applet程序可以實現(xiàn)一般網(wǎng)頁所不能實現(xiàn)的效果,從而引來業(yè)界對Java的熱捧,因此當(dāng)時很多操作系統(tǒng)都預(yù)裝了Java虛擬機。
1997年4月2日,JavaOne會議召開,參與者逾1萬人,創(chuàng)當(dāng)時全球同類會議規(guī)模之紀(jì)錄。
1998年12月8日,Java 2企業(yè)平臺J2EE發(fā)布,標(biāo)志著Sun公司正式進軍企業(yè)級應(yīng)用開發(fā)領(lǐng)域。
1999年6月,隨著Java的快速發(fā)展,Sun公司將Java分為3個版本,即標(biāo)準(zhǔn)版(J2SE)、企業(yè)版(J2EE)和微型版(J2ME)。從這3個版本的劃分可以看出,當(dāng)時Java語言的目標(biāo)是覆蓋桌面應(yīng)用、服務(wù)器端應(yīng)用及移動端應(yīng)用3個領(lǐng)域。
2004年9月30日,J2SE 1.5發(fā)布,成為Java語言發(fā)展史上的又一里程碑。為了凸顯該版本的重要性,J2SE 1.5被更名為Java SE 5.0。
2005年6月,JavaOne大會召開,Sun公司發(fā)布了Java SE 6。此時,Java的各種版本已經(jīng)更名,已取消其中的數(shù)字“2”,即J2EE被更名為Java EE、J2SE被更名為Java SE、J2ME被更名為Java ME。
2009年4月20日,Oracle公司以74億美元收購了Sun公司,從此Java歸屬于Oracle公司。
2011年7月28日,Oracle公司發(fā)布Java 7正式版。該版本新增了許多特性,如try-with-resources語句、增強switch-case語句、支持字符串類型等。
2011年6月中旬,Oracle公司正式發(fā)布了Java EE 7。該版本的目標(biāo)在于提高開發(fā)人員的生產(chǎn)力,滿足最苛刻的企業(yè)需求。
2014年3月19日,Oracle公司發(fā)布Java 8正式版。該版本中的Lambdas表達(dá)式、Streams流式計算框架等廣受開發(fā)者關(guān)注。
由于Java 9中計劃開發(fā)的模板化項目(或稱Jigsaw)存在比較大的技術(shù)難度,JCP執(zhí)行委員會內(nèi)部成員也無法達(dá)成共識,因此造成該版本的發(fā)布一再延遲。Java 9及Java EE 8終于在2017年9月發(fā)布,Oracle公司宣布將Java EE 8移交給開源組織Eclipse基金會。同時,Oracle公司承諾,后續(xù)Java的發(fā)布頻率調(diào)整為每半年一次。如圖1-2所示為Java EE 8整體架構(gòu)圖。
2018年2月26日,Eclipse基金會社區(qū)正式將Java EE更名為Jakarta EE,也就是說,下個Java企業(yè)級發(fā)布版本將可能會命名為Jakarta EE 9。這個名稱來自Jakarta——一個早期的Apache開源項目。
2018年3月20日,Java 10如期發(fā)布,包含了109項新特性。
2018年9月25日,Oracle官方宣布Java 11正式發(fā)布。該版本帶來了官網(wǎng)公開的17個特性增強。
2019年3月19日,Oracle宣布推出Java 12。該版本帶來了許多新功能,包括Switch表達(dá)式的增強預(yù)覽和Shenandoah垃圾回收器等。
2019年9月17日,Oracle宣布推出Java 13。該版本帶來了諸如動態(tài)類數(shù)據(jù)共享歸檔和文本塊等新功能。

圖1-2 Java EE 8整體架構(gòu)圖
1.1.2 Java大有可為
今天的Java已經(jīng)涵蓋了從移動端到企業(yè)級應(yīng)用再到分布式系統(tǒng)、微服務(wù)、Cloud Native(云原生)的各個領(lǐng)域。可以說掌握J(rèn)ava不但可以在職場上謀求一份不錯的職位,同時Java廣闊的應(yīng)用領(lǐng)域更加有利于Java從業(yè)者拓寬發(fā)展的前景。
Java是免費、開源的,因此使用Java進行應(yīng)用的開發(fā)費用很低,是很多初創(chuàng)企業(yè)首選。
Java學(xué)習(xí)技術(shù)門檻低,社區(qū)活躍,無論你是IT小白還是技術(shù)大牛,都能找到使用Java的志同道合者。
因此,掌握J(rèn)ava大有可為。讓我們一起踏上Java學(xué)習(xí)之路吧!
- C及C++程序設(shè)計(第4版)
- 樂學(xué)Web編程:網(wǎng)站制作不神秘
- Visual Basic程序設(shè)計教程
- Learning Informatica PowerCenter 10.x(Second Edition)
- Scala謎題
- RabbitMQ Cookbook
- 愛上micro:bit
- Learning AngularJS for .NET Developers
- Python網(wǎng)絡(luò)爬蟲實例教程(視頻講解版)
- C語言程序設(shè)計
- HTML5與CSS3權(quán)威指南
- Google Adsense優(yōu)化實戰(zhàn)
- Magento 2 Developer's Guide
- 微服務(wù)設(shè)計
- C語言進階:重點、難點與疑點解析