Java編程語言精通到底有多難?
敢說自己精通Java的有兩種人,一種是牛人,另一種是愛吹牛的人。

可能在Java領(lǐng)域工作了三五年的人都沒有資格在簡歷上寫下精通Java兩個字,同樣的,寫精通c++或者其他的也不多。
因為精通一門編程語言不僅僅是對語法了如指掌,還要深挖和拓寬。
難點一,拓寬Java:
Java作為橫行幾十年的語言,而且一直處于開源的狀態(tài),生態(tài)圈幾乎是編程語言里最為龐大的。無論是大數(shù)據(jù)還是中間件,都可以用Java進行開發(fā)。而與Java相關(guān)的技術(shù)能精通一門就已經(jīng)很厲害,最重要的是Java方面的很多技術(shù)都是要相輔相成。

比如開發(fā)一個web系統(tǒng),Java相關(guān)的spring家族框架,Java相關(guān)的MySQL數(shù)據(jù)庫,都是最基本的,還有諸如緩存Redis,負載均衡Nginx等等。
玩Java,其生態(tài)圈就足夠你玩一輩子不重樣。
難點二,深挖Java:
Java相關(guān)技術(shù)已經(jīng)琳瑯滿目,更可怕的是去深挖其中某個技術(shù)。比Java最常用框架spring,你如果只是單純的會用,頂多在簡歷上寫熟練,而如果你想寫精通spring,那你沒把源碼看個三五遍是沒有這種資本的。而很多人喜歡提的Java虛擬機更是接近操作系統(tǒng)的東西,研究起來枯燥而難懂。
更重要的是,拋開Java相關(guān)技術(shù),Java自己的語法特性比如多線程,網(wǎng)絡(luò)編程,以及反射就足以讓人花心思研究。
不過歸根結(jié)底,深挖Java底層的東西,必須精通數(shù)據(jù)結(jié)構(gòu),設(shè)計模式,最重要的還是Java自己的語法特性。

