我想对读者说的话
課程背景
近些年來,無論是使用規(guī)模、開發(fā)者人數(shù),還是技術(shù)生態(tài)成熟度、相關(guān)工具的豐富程度,Java 都當之無愧是后端開發(fā)語言中不可撼動的王者,也是開發(fā)各類業(yè)務(wù)系統(tǒng)的首選語言。
時至今日,整個 IT 招聘市場上,Java 開發(fā)工程師依然是缺口最大,需求最多的熱門職位。另外,從整個市場環(huán)境看,傳統(tǒng)企業(yè)的信息化,傳統(tǒng) IT 系統(tǒng)的互聯(lián)網(wǎng)化,都還有非常大的發(fā)展空間,由此推斷未來 Java 開發(fā)的市場前景廣闊,從業(yè)人員的行業(yè)紅利還可以持續(xù)很長時間。
從權(quán)威的 TIOBE 編程語言排行榜 2019 年 11 月數(shù)據(jù)來看,Java 的流行程度也是穩(wěn)居第一。
拉勾網(wǎng) 2019 年 9 月統(tǒng)計的招聘崗位比例,也可以看到 Java 和 JavaScript 是最高的,不過 Java 的求職難度只有 JavaScript 的 1/7。
Java 平均一個崗位有 4 個人競爭,而 JavaScript 則是 28 個,Perl 最夸張,超過 30 個。
而通過職友網(wǎng)的數(shù)據(jù)統(tǒng)計,北京、上海、杭州、深圳的 Java 程序員平均薪酬在 16-21K 之間,在廣州、成都、蘇州、南京等城市也有 11K-13K 的平均收入,遠超一般行業(yè)的收入水平。
所以學(xué)習(xí) Java 目前還是一個非常有優(yōu)勢的職業(yè)發(fā)展選擇。
而了解 JVM 則是深入學(xué)習(xí) Java 必不可少的一環(huán),也是 Java 開發(fā)人員邁向更高水平的一個階梯。我們不僅要會用 Java 寫代碼做系統(tǒng),更要懂得如何理解和分析 Java 程序運行起來以后內(nèi)部發(fā)生了什么,然后可以怎么讓它運行的更好。
就像我們要想多年開車的老司機,僅僅會開車肯定不能當一個好司機。車開多了,總會有一些多多少少大大小小的故障毛病。老司機需要知道什么現(xiàn)象說明有了什么毛病,需要怎么處理,不然就會導(dǎo)致經(jīng)常拋錨,影響我們的行程。
本課程就是用來教會我們怎么能夠去了解 JVM 這輛優(yōu)秀跑車的一些原理和怎么去用各種工具分析修理它。
課程特點
市面上各類 JVM 相關(guān)的資料雖多,但是明顯存在兩個極端:過于生澀難懂,或者流于某個技巧點而不系統(tǒng)化。同時各大公司也都越來越重視推動和發(fā)展 JVM 相關(guān)技術(shù),一線大廠技術(shù)面試現(xiàn)在 JVM 知識也是必考科目。
在這個背景下,我們?nèi)媸崂砹讼到y(tǒng)化學(xué)習(xí) JVM 的知識和經(jīng)驗,包括 JVM 的技術(shù)和內(nèi)存模型,JVM 參數(shù)和內(nèi)置工具,GC 算法,GC 日志、內(nèi)存和線程等相關(guān)問題排查分析,以及常見的面試問題深度剖析等高級的進階方法與實戰(zhàn),既滿足大家快速系統(tǒng)化學(xué)習(xí)和全面掌握知識的需求,又兼顧大家的面試經(jīng)驗輔導(dǎo)。
- 通過體系化的學(xué)習(xí),了解一般原理,知其然知其所以然;
- 熟悉工具和方案,知道從何下手,工作中如何分析和解決問題;
- 隨著課程的演示和練習(xí),加深理解,不管大家之前的基礎(chǔ)如何,都能夠融會貫通;
- 面試題的解析部分,會根據(jù)大家的反饋進行持續(xù)更新,長期助力于大家的學(xué)習(xí)和進步。
本課程的特點可以總結(jié)為 16 個字:
體系完整、層次分明、深入淺出、實踐為要
為什么做這門課
最近有人問我,程序員多以高深技術(shù)為尊,為什么你要做 JVM 的一個偏向于基礎(chǔ)和實際應(yīng)用的專欄,而不是一個講 JVM 內(nèi)部實現(xiàn)的各種底層原理,或者是高深的各種算法原理之類的內(nèi)容。
我在此想說一下我對這個問題的想法:
我個人一直認為,技術(shù)應(yīng)該有兩方面,有一小部分人去做高精尖的,以理論為主,更多的人以把技術(shù)應(yīng)用到實際工作、改進效率、提高生產(chǎn)力,以實用為主。這也契合了技術(shù)大牛史海峰老師經(jīng)常說的一句話,架構(gòu)師應(yīng)該是一個胸懷理想的實用主義者。
所以,我們再這個課程里,只給大家呈現(xiàn)那些對大家的工作和其他方面,應(yīng)該會有用的東西,腳踏實地的東西,不管是技術(shù)點,還是經(jīng)驗之談,雖有少量的前瞻性介紹和展望,但是主線一定是偏向于基礎(chǔ)和實際應(yīng)用的。
前一陣在網(wǎng)上聽樊登老師的演講,他提到的一個東西方教學(xué)的差異。國人教學(xué)、傳授知識,喜歡按孔子、老子的這一套,講究悟性,說一句話就很高深,讓人摸不著頭腦,然后你要是有悟性,就能悟到真理,悟不到就說明還需要加倍努力。
而西方從蘇格拉底、柏拉圖、亞里士多德起,就喜歡用邏輯,第一步是這樣,第二步是那樣,第三步要是發(fā)現(xiàn)第一步不完善,那么 OK,我們就可以去改善第一步,然后繼續(xù)第二步,第三步……這樣我們的知識體系就會慢慢的越來越完善,厚實,接近真理,并且這個方法是可以復(fù)制的。
所以我們公司技術(shù)委員會就組織了一些一線的技術(shù)人員,在我們的研發(fā)團隊實驗了幾期 4~6 課時,每次 2 小時的“知識+實踐”課程,并且受到了良好的效果和積極的反饋。
恰好當時內(nèi)部培訓(xùn)的時候,《JVM 基礎(chǔ)入門》這門課是我和富飛一起組織的,富飛在以往的工作經(jīng)歷中,翻譯和撰寫了不少 JVM 相關(guān)的技術(shù)文章和博客,在 JVM 方面積累了大量的一手經(jīng)驗和技巧。
知識這種東西,獨樂樂不如眾樂樂,一個人會了它的價值就有限,我們在公司內(nèi)部做了培訓(xùn)也還是只影響了參加培訓(xùn)的百八十個人。如果把 JVM 的內(nèi)容進行更加完整的整理加工,再融合目前行業(yè)里大家最關(guān)心的各類問題,變成一個公開的課程,那么就可以影響到更多的人,產(chǎn)生更大的價值,對大家都有益,這是一個多贏的事情(這也是史老師那句話的前半句里的“胸懷理想"吧)。
基于這些原因,大家一拍即合,于是就有了這個課程跟大家見面。我們相信這門課程,一定不會讓大家失望。
課程內(nèi)容
本課程分為兩部分,基礎(chǔ)知識篇主要介紹 JVM 的基礎(chǔ)知識、JDK 相關(guān)的各種工具用法,深入分析篇講解各種 GC 算法、如何進行 JVM 的 GC 日志、線程、內(nèi)存等各類指標進行分析和問題診斷,再結(jié)合作者的實際分析調(diào)優(yōu)經(jīng)驗,以及對于常見的 JVM 面試問題進行分析和解答,為學(xué)習(xí)者梳理清楚 JVM 的整體知識脈絡(luò),帶來最全面的 JVM 一線經(jīng)驗和實用技巧。
本次分享您將了解以下內(nèi)容(22 課時):
基礎(chǔ)知識篇
深入分析篇
送給大家的話
俗話說,“活到老、學(xué)到老”。IT 行業(yè)的技術(shù)發(fā)展和創(chuàng)新速度太快,新的知識很快成為老知識,新的技巧很快成為舊把式,只有終身學(xué)習(xí)才能適應(yīng)技術(shù)本身的發(fā)展。同時現(xiàn)在隨著網(wǎng)絡(luò)的發(fā)展,特別是各類新的內(nèi)容平臺和媒體的涌現(xiàn),信息不是太少了,而是太多了。
信息爆炸帶來了甄別有用信息的過程成本增加,這時候選擇好的學(xué)習(xí)途徑、學(xué)習(xí)內(nèi)容就跟學(xué)習(xí)方法一樣重要,為大家系統(tǒng)化的總結(jié)經(jīng)驗和傳播知識也同樣變得很重要。
讓我們一起在 GitChat 平臺不斷學(xué)習(xí),跟志同道合的同學(xué)們一起努力,共同進步。
總結(jié)
- 上一篇: 多功能悬浮球下载_fv悬浮球下载-FV悬
- 下一篇: git篇