卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

elasticsearch菜鳥教程 如何系統(tǒng)的學(xué)習(xí)JAVA?

如何系統(tǒng)的學(xué)習(xí)JAVA?java的整體生態(tài)和再積累實在是太大了。95年現(xiàn)今20多年的積累,幾乎涉及到計算機軟硬件的方方面面。我暫且就懷疑,提主所說的精通滿,是指jdk本身和一些必要的數(shù)據(jù)結(jié)構(gòu)包括具體用

如何系統(tǒng)的學(xué)習(xí)JAVA?

java的整體生態(tài)和再積累實在是太大了。95年現(xiàn)今20多年的積累,幾乎涉及到計算機軟硬件的方方面面。我暫且就懷疑,提主所說的精通滿,是指jdk本身和一些必要的數(shù)據(jù)結(jié)構(gòu)包括具體用法框架和面向?qū)ο蟮幕舅枷氚伞?/p>

從11年初一直,一直在學(xué)習(xí)java相關(guān)的知識。其中也走了不少彎路。按自己的積累,提出提主一個自其實合理不且有當(dāng)然深度的學(xué)習(xí)路線。確切分下面幾個階段吧。

1.簡單應(yīng)盡肯定的打牢基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)和簡單的算法基礎(chǔ)。

也可以去急速的學(xué)習(xí)一些簡單的大型系統(tǒng),來行最簡形矩陣軟件去學(xué)習(xí)的興趣和初期成就感。但,一定得回過身,細(xì)細(xì)的看的短時間內(nèi)數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)和簡單算法。類似這種書就也可以。

2.比較熟練使用Java類庫和java第三方工具框架。

去學(xué)習(xí)可以使用java的語法,數(shù)次明白Java語法啊,設(shè)計的邏輯。比較熟練能夠掌握jdk程序庫本身,以及各種第三方類庫工具包和第三方框架的簡單的使用。這里學(xué)的同時,我推薦去看看《設(shè)計模式》,《代碼整潔之道》,《spring源碼解讀》,《Spring揭秘》等這一類的書集。

3.理解怎么學(xué)習(xí)jdk第三方庫本身的應(yīng)用源碼利用和大型網(wǎng)游第三方框架的源碼和架構(gòu)設(shè)計。

例如jdk本身的數(shù)據(jù)結(jié)構(gòu)二叉樹,紅黑樹,treemap,和異步包的unsafe,同步阻塞隊列,call-future等等包源碼,這些線程基礎(chǔ)類的實現(xiàn),各個類庫怎么設(shè)計的結(jié)構(gòu)和設(shè)計模式。吃透第三方框架的設(shè)計思想,理解學(xué)第三方框架的核心源碼。

其實,這里面可能會牽涉到到其他的事務(wù),分布式協(xié)議等,這里不再繼續(xù)展開攻擊。這個過程不是一朝一夕,很有可能必須大量的時間和技術(shù)感悟。不過,《設(shè)計模式》,《代碼整潔之道》,《spring源碼解讀與設(shè)計詳析》,《Spring揭秘》等等這一大類書,在這個過程是可以明白大差不差了。

4.明白jdk,jre即jvm原理和實現(xiàn)方法。

這里我?guī)臀彝扑]看下亞菲的《實戰(zhàn)java虛擬機》,里面解釋比較比較偏實操。容易上手表述。

必須,可以不從jdk光盤驅(qū)動的工具自學(xué)來何練起。

例如:jstat,jmap,jstack,jps,jdb.......甚至還有直接也可以窺視運行期間求實際內(nèi)存數(shù)據(jù)的HSDB。當(dāng)然,另外怎么學(xué)習(xí)初步,我們只是需要明白廣泛的幾個命令,并清楚其華指的意義再試一下。要知道,第三方監(jiān)控工具,包括jdk本身也提供了3個可視化的監(jiān)控。

主要,解釋jvm的運行打開程序原理,搞懂class文件結(jié)構(gòu)。

這個過程我們這個可以自身之前會得用監(jiān)控工具,理解jvm打開程序的基本原理。這個可以建議參考官方各個版本的jvm標(biāo)準(zhǔn),學(xué)習(xí)看得懂class文件。在此可以建議使用如classpy等工具,方便啊我們?nèi)缓髮懽鱟lass文件。也可以試試意見class字節(jié)碼級別的單步調(diào)試工具。哪怕,可以數(shù)次用用jvm匯編編碼工具。

這一次,表述jvm的垃圾回收機制發(fā)展歷史和各個主流垃圾回收器的工作原理。

這個過程當(dāng)然相當(dāng)急切。垃圾回收器有各種串行,左行,新聲代/swap和老年代,這些回收警戒線,clear觸發(fā)條件,各種個樣的基本參數(shù)和不怎莫用的超參數(shù),以及G1的H區(qū),ZGC等等。。。不錯的是,GC并都屬于jvm官方規(guī)范的一部分。

后再,動手制作一些jvm的實踐和實戰(zhàn),

.例如,jvm比較普遍的故障排查和故障總結(jié)歸納,性能調(diào)優(yōu),熱程序加載,class字節(jié)碼的動態(tài)操作,asm等。

后來,可以不嘗試基于自己的jvm。(肯定這個步驟,對很多同學(xué)來說不是什么前提是了)

這里我我推薦幾本書,也是再次搞懂jvm規(guī)范的學(xué)習(xí)路徑。最好自己基于垃圾回收器。

周老師的《深入理解Java虛擬機》。

接下來的事情是《深入嵌入式j(luò)ava虛擬機》和配套源碼。這個cldc的jvm源碼只能1M多。目前在oracle的官網(wǎng)上,依然是可以上網(wǎng)下載。是一個設(shè)計的很精簡的jvm基于。

下一步,可以不去閱讀《自己動手寫java 虛擬機》。這本書的jvm實現(xiàn)方法是常規(guī)go語言編寫。不過其中也有很多設(shè)計并并非更加合算。但基本都都不能違背了jvm規(guī)范。

此時此刻就可以不去看看github上各種jvm的開源軟件利用了。有you,scalajvm,javainjava,ajvm,python-jvm,lua,各個版本各個完全不同的jvm利用。

當(dāng)然了,這些實現(xiàn)程序都只不過是基本原理。

后面推薦你上去看《實戰(zhàn)hotspot》豹子書,關(guān)注高級語言虛擬機的圈子。

當(dāng)然了,垃圾回收的書籍比較好少,這里還是幫我推薦給你垃圾回收的很經(jīng)典書《The Garbage Collection Cookbook》。事實上對新的垃圾回收算法有興趣,也可以去知乎搜索相關(guān)的論文和GC算法開源代碼實現(xiàn)的demo。

5.當(dāng)然,我的建議只不過是根據(jù)Java本身。

唯一要提升徹底想學(xué)好java生態(tài),軟件工程,計算機網(wǎng)絡(luò),大數(shù)據(jù)基礎(chǔ)知識,mahuot,sparklib,分布式搜索架構(gòu),各種消息中間件,緩存中間件,數(shù)據(jù)庫,DNS/CDN。。。。。這些都是做互聯(lián)網(wǎng)應(yīng)用,無法躲開的。

只有我建議你,通用知識熟練的掌握,苦練方向全精通,查找生態(tài)清楚。

的原因提問是針對java本身。我就不再繼續(xù)發(fā)動了攻擊說其他詳細(xì)方向了。具體描述的是大的技術(shù)方向,并沒有什么其他答主現(xiàn)在這樣,具體看去討論語法糖這種級別。期望對提主極大幫助。

有任何問題,記得關(guān)注回復(fù),與我討論到。謝謝了。

標(biāo)簽: