亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Java語(yǔ)言十五講(前言)

endless_road / 1336人閱讀

摘要:發(fā)布史年月日,公司正式發(fā)布語(yǔ)言,這一天是的生日。年月日,發(fā)布,成為語(yǔ)言發(fā)展史上的又一里程碑。年月,發(fā)布,三個(gè)版本分別改為,,,。年月日,以億美元收購(gòu)公司,并取得了的版權(quán)。年月日,發(fā)布,并改用的命名方式。

特此聲明:本文為本人公司郭總原創(chuàng)書(shū)籍的前言,該書(shū)還未出版,作為該書(shū)籍的初版在接下來(lái)的時(shí)間里,將免費(fèi)在本人微信公眾號(hào)內(nèi)不間斷更新與大家一起學(xué)習(xí)閱讀。喜歡學(xué)習(xí)的小伙伴可以搜索微信公眾號(hào):程序員Hotel 或者在文末處微信掃描二維碼識(shí)別關(guān)注

前言

每年技術(shù)媒體都會(huì)評(píng)選最受歡迎的編程語(yǔ)言,Java總是高居前位。自然,沒(méi)有辦法說(shuō)一個(gè)語(yǔ)言絕對(duì)比另一種語(yǔ)言好,這個(gè)話題一如既往地會(huì)引起大家無(wú)謂的爭(zhēng)論不休。對(duì)別的行業(yè)的人來(lái)講也許會(huì)覺(jué)得莫名其妙,但是對(duì)我們程序員來(lái)講,捍衛(wèi)某種語(yǔ)言是一件很動(dòng)感情的事情。就跟捍衛(wèi)自己的母校一樣,只能自己說(shuō)不好,別人不能說(shuō)不好的。

Java從正式出生以來(lái)(1995.05.23),已經(jīng)過(guò)了24年時(shí)間了,它現(xiàn)在仍在全世界廣泛被使用,擁有大量程序員和工作機(jī)會(huì),這一個(gè)事實(shí)毫無(wú)疑義地證明了Java的成功。

但是,大家切記的是,討論Java,不能當(dāng)它只是一門編程語(yǔ)言,它還是一個(gè)平臺(tái),同時(shí)是一個(gè)生態(tài)。我二十多年前在Sun公司技術(shù)研發(fā)中心的時(shí)候,一個(gè)工作任務(wù)之一就是告訴大家Java不僅僅是一門語(yǔ)言。我們的技術(shù)總監(jiān)曾經(jīng)說(shuō),如果一定要認(rèn)為Java是一門語(yǔ)言,可以說(shuō)“Java是服務(wù)端的語(yǔ)言”。我把這個(gè)歷史說(shuō)出來(lái),就是讓大家在學(xué)習(xí)語(yǔ)言的時(shí)候記住Java有其更加廣泛的空間。

不過(guò),本系列講座又確實(shí)主要從語(yǔ)言本身的層面介紹Java。針對(duì)的對(duì)象是初步了解Java語(yǔ)言的程序員,如本專業(yè)的大學(xué)畢業(yè)生或者是從事編程工作一年時(shí)間的程序員們。希望對(duì)Java語(yǔ)言有一個(gè)進(jìn)階的理解。

就跟世界上任何自然語(yǔ)言一樣,人為發(fā)明約定的編程語(yǔ)言也是不斷與時(shí)皆進(jìn)的。從一個(gè)嬰兒慢慢長(zhǎng)大成人。

我本人曾經(jīng)身在Sun Java團(tuán)隊(duì)之中,雖然沒(méi)有為Java發(fā)展做出什么貢獻(xiàn),沒(méi)有開(kāi)辟新大陸,就像是一個(gè)跟隨哥倫布船隊(duì)的小船員,也是見(jiàn)證了一段歷史。但是對(duì)新大陸熱愛(ài)的心卻一直在澎拜。希望這個(gè)系列講座為Java布道,對(duì)后來(lái)的年輕人能有所幫助。

我們來(lái)看看Java的成長(zhǎng)歷史。

Java前傳

1990年,Sun公司啟動(dòng)“Green計(jì)劃”,旨在開(kāi)發(fā)智能家電的嵌入式控制系統(tǒng)。

1991年,Green項(xiàng)目組發(fā)現(xiàn)家用設(shè)備太多樣化,C++移植過(guò)于繁瑣,無(wú)法統(tǒng)一編程,Gosling決定開(kāi)發(fā)一種新的可移植語(yǔ)言,開(kāi)頭想叫C-,后來(lái)命名為“Oak”。名字來(lái)自于辦公室窗口的一棵樹(shù)。

1994年,Gosling將Oak更名為Java,名字來(lái)自于工作間隙Gosling去飲水機(jī)沖咖啡時(shí)候的一閃念。接著團(tuán)隊(duì)完成JVM實(shí)現(xiàn),完成第一個(gè)Java編譯器,完成Java實(shí)現(xiàn)的瀏覽器WebRunner(后來(lái)的HotJava)。這個(gè)團(tuán)隊(duì)總共三個(gè)人。

這就是創(chuàng)世時(shí)刻的樣子。

Java發(fā)布史

1995年5月23日,Sun公司正式發(fā)布Java語(yǔ)言,這一天是JAVA的生日。

1996年,JDK1.0發(fā)布,這是重要里程碑,標(biāo)志著它成為一種獨(dú)立的開(kāi)發(fā)工具。在1996年5月底,Sun公司于美國(guó)舊金山舉行了首屆JavaOne大會(huì),這成為歷史上傳統(tǒng)的經(jīng)典盛會(huì)。

1998年12月,第二代Java平臺(tái)的企業(yè)版J2EE發(fā)布。

1999年6月,Java2被分成三個(gè)版本:J2SE(標(biāo)準(zhǔn)版)、J2EE(企業(yè)版)、J2ME(微型版),有一個(gè)重要的里程碑,標(biāo)志著Java的應(yīng)用開(kāi)始普及。

2001年9月24日,J2EE1.3發(fā)布。

2002年2月,J2SE1.4發(fā)布,各種開(kāi)源框架大量出現(xiàn)。

2004年9月30日18:00PM,J2SE1.5發(fā)布,成為java語(yǔ)言發(fā)展史上的又一里程碑。

2005年6月,Java SE 6.0發(fā)布,三個(gè)版本分別改為:JavaSE, JavaEE,, JavaME。

2009年4月20日,Oracle以74億美元收購(gòu)Sun公司,并取得了Java的版權(quán)。

2011年7月,JavaSE7發(fā)布。

2014年3月,JavaSE8發(fā)布。

Java特性演化史

1996年,JDK 1.0主要包括的特性:Applet、AWT等。在網(wǎng)頁(yè)上動(dòng)態(tài)變換的小動(dòng)畫震驚了整個(gè)Internet技術(shù)圈。

1997年,JDK 1.1,引入了一些后來(lái)常用的技術(shù)點(diǎn),如:JAR文件格式、JDBC、JavaBeans、RMI,Inner Class和Reflection。

1998年12月4日,史詩(shī)巨獻(xiàn)的JDK 1.2發(fā)布,包含的主要技術(shù),如EJB、Java Plug-in、Java IDL、Swing等以及后來(lái)常用的Collections集合類。

2000年中,JDK 1.3發(fā)布,主要改進(jìn)和引入了一些類庫(kù)上,如數(shù)學(xué)運(yùn)算和新的Timer API,JNDI服務(wù),CORBA IIOP,Java 2D。

2002年,JDK 1.4發(fā)布,標(biāo)志著Java的成熟,引入了一些新技術(shù)特性,如正則表達(dá)式、NIO、日志類、XML解析器等。

2004年,JDK 1.5發(fā)布,改進(jìn)包括了自動(dòng)裝箱、泛型、動(dòng)態(tài)注解、枚舉、可變長(zhǎng)參數(shù)、foreach循環(huán),還提供了java.util.concurrent并發(fā)包等。

2006年12月11日,JDK 1.6發(fā)布,并改用Java SE 6、Java EE 6、Java ME 6的命名方式。重大的改進(jìn)包括動(dòng)態(tài)語(yǔ)言支持、提供編譯API等。虛擬機(jī)層面,包括鎖與同步、垃圾收集、類加載等方面的算法都有很多改動(dòng)。

后來(lái),由于經(jīng)濟(jì)危機(jī)和收購(gòu)案,Java發(fā)展遇到諸多挫折,Java7難產(chǎn)。

2011年Oracle發(fā)布的Java7采用了B計(jì)劃,沒(méi)有按照原先的設(shè)計(jì)推出。重要的改進(jìn)包含:動(dòng)態(tài)類型語(yǔ)言在 JVM 上的執(zhí)行效率得到大幅提升,G1 垃圾回收器性能, 主要用于 Server 端,核心類庫(kù)改進(jìn): ClassLoader, URLClassLoader, Concurrent, i18n

2014年,發(fā)布Java8,主要的改進(jìn)終于引入了Lambda表達(dá)式。

歷史評(píng)價(jià)

Java是一個(gè)劃時(shí)代的跨平臺(tái)產(chǎn)品,這個(gè)最基礎(chǔ)最根本的設(shè)計(jì)初衷已經(jīng)完全達(dá)到;

Java衍生出來(lái)的框架及其生態(tài)是世界上最成功的技術(shù)平臺(tái)之一,這一點(diǎn)超出了設(shè)計(jì)初衷;

Java最功敗垂成的設(shè)計(jì)是EJB,這是Java企業(yè)版本中最重大最著力的技術(shù)革新,由于設(shè)計(jì)和實(shí)現(xiàn)的復(fù)雜,推廣困難,被悉尼大學(xué)的Rod Johnson這個(gè)音樂(lè)學(xué)博士單槍匹馬挑下馬,最后完敗于輕量級(jí)框架。

Java是Sun公司及James Gosling對(duì)人類的偉大貢獻(xiàn),而沒(méi)有獲取到什么利益。

本系列講座,我打算講十五個(gè)主題:

主題 1 - Generic Programming

1.1 Generic Class

1.2 Generc Methods

1.3 Bounds & Wildcard Types

1.4 Ceneric Code & VM

1.5 Reflection and Generics

主題 2 - Reflection

主題 3 - Proxy

主題 4 - ClassLoader

主題 5 - Inner Class

主題 6 - Event

6.1 Event Object

6.2 Actions

6.3 Event Handling

主題 7 - Exception

7.1 Exception

7.2 Assertion

7.3 Logging

7.4 Debugging

主題 8 - RE

主題 9 - Multi-Thread

9.1 Threads

9.2 Synchornization

9.3 Thread-Safe Collections

9.4 Executors

主題 10 - Collections

10.1 Interfaces

10.2 Collections

10.3 Framwork

10.4 Algorithms

主題 11 - IO

11.1 Streams

11.2 Text

11.3 Binary Data

11.4 Files

主題 12 - Network

12.1 Sockets

12.2 Implementing Servers

12.3 Web

12.4 E-Mail

主題 13 - Enum

主題 14 - Annotation

主題 15 - Script

編程,不僅僅是學(xué),還是做,說(shuō)到底是一個(gè)手工藝活兒。曾經(jīng)有好些入門的年輕人問(wèn)我如何編得一手好程序?我的回答總是“無(wú)他無(wú)他,惟手熟爾?!币胩岣呔幊趟?,唯一的方法就是動(dòng)手去編。只要結(jié)合“眼”“腦””手”三者,不斷學(xué),不斷想,不斷做,就能大有成效。堅(jiān)持兩三年,邁上一個(gè)嶄新的臺(tái)階,到了那時(shí),定會(huì)體會(huì)到“雖人不我知,而胸中自有溝壑”的美妙境界。

荀子云:學(xué)不可以已。

原創(chuàng)書(shū)籍目錄傳送門:《Java十五講》

微信掃描下方二維碼(微信公眾號(hào):程序員Hotel),?更多優(yōu)質(zhì)資源及優(yōu)質(zhì)文章及時(shí)獲取,請(qǐng)大家多多支持哦!

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/73995.html

相關(guān)文章

  • 《On Java 8》中文版,又名《Java 編程思想》中文第五版

    摘要:基于版本基于版本。由于中英行文差異,完全的逐字逐句翻譯會(huì)很冗余啰嗦。譯者在翻譯中同時(shí)參考了谷歌百度有道翻譯的譯文以及編程思想第四版中文版的部分內(nèi)容對(duì)其翻譯死板,生造名詞,語(yǔ)言精煉度差問(wèn)題進(jìn)行規(guī)避和改正。 來(lái)源:LingCoder/OnJava8 主譯: LingCoder 參譯: LortSir 校對(duì):nickChenyx E-mail: 本書(shū)原作者為 [美] Bru...

    BingqiChen 評(píng)論0 收藏0
  • 【數(shù)據(jù)結(jié)構(gòu)_浙江大學(xué)MOOC】第三四五講 樹(shù)

    摘要:然而,一棵給定的二叉搜索樹(shù)卻可以由多種不同的插入序列得到。輸出格式對(duì)每一組需要檢查的序列,如果其生成的二叉搜索樹(shù)跟對(duì)應(yīng)的初始序列生成的一樣,輸出,否則輸出。 本篇為關(guān)于樹(shù)的編程題,給出編譯器 C++(g++)的解答。主要記錄題意理解和代碼學(xué)習(xí)過(guò)程。 1 樹(shù)的同構(gòu) 題目 給定兩棵樹(shù)T1和T2。如果T1可以通過(guò)若干次左右孩子互換就變成T2,則我們稱兩棵樹(shù)是同構(gòu)的。例如圖1給出的兩棵樹(shù)就是...

    happyfish 評(píng)論0 收藏0
  • 爬蟲(chóng)入門到精通-網(wǎng)頁(yè)的解析(xpath)

    摘要:起初的提出的初衷是將其作為一個(gè)通用的介于與間的語(yǔ)法模型。的基本使用要使用我們需要下載,在爬蟲(chóng)入門到精通環(huán)境的搭建這一章也說(shuō)明怎么裝,如果還沒(méi)有安裝的話,那就去下載安裝吧直接看代碼實(shí)戰(zhàn)吧。 本文章屬于爬蟲(chóng)入門到精通系統(tǒng)教程第六講 在爬蟲(chóng)入門到精通第五講中,我們了解了如何用正則表達(dá)式去抓取我們想要的內(nèi)容.這一章我們來(lái)學(xué)習(xí)如何更加簡(jiǎn)單的來(lái)獲取我們想要的內(nèi)容. xpath的解釋 XPath即為...

    ispring 評(píng)論0 收藏0
  • JAVA筆記 - 收藏集 - 掘金

    摘要:動(dòng)態(tài)代理個(gè)經(jīng)紀(jì)人如何代理個(gè)明星掘金在代理模式女朋友這么漂亮,你缺經(jīng)紀(jì)人嗎中我們用寶強(qiáng)的例子介紹了靜態(tài)代理模式的概念。掘金使用從頭創(chuàng)建一個(gè),這種方法比較簡(jiǎn)單。 動(dòng)態(tài)代理:1 個(gè)經(jīng)紀(jì)人如何代理 N 個(gè)明星 - Android - 掘金在 代理模式:女朋友這么漂亮,你缺經(jīng)紀(jì)人嗎? 中我們用寶強(qiáng)的例子介紹了靜態(tài)代理模式的概念。 本來(lái)我的目的是通過(guò)大家耳熟能詳?shù)睦觼?lái)加深理解,但是有些網(wǎng)友指責(zé)...

    kamushin233 評(píng)論0 收藏0
  • SpringBoot 實(shí)戰(zhàn) (十五) | 服務(wù)端參數(shù)校驗(yàn)之一

    摘要:前言估計(jì)很多朋友都認(rèn)為參數(shù)校驗(yàn)是客戶端的職責(zé),不關(guān)服務(wù)端的事。輕則導(dǎo)致服務(wù)器宕機(jī),重則泄露數(shù)據(jù)。所以,這時(shí)就需要設(shè)置第二道關(guān)卡,服務(wù)端驗(yàn)證了。老項(xiàng)目的服務(wù)端校驗(yàn)不能為空不能為空看以上代碼,就一個(gè)的校驗(yàn)就如此麻煩。 前言 估計(jì)很多朋友都認(rèn)為參數(shù)校驗(yàn)是客戶端的職責(zé),不關(guān)服務(wù)端的事。其實(shí)這是錯(cuò)誤的,學(xué)過(guò) Web 安全的都知道,客戶端的驗(yàn)證只是第一道關(guān)卡。它的參數(shù)驗(yàn)證并不是安全的,一旦被有心人...

    QiShare 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<