01
JAVA為什么有前途?
過去的十多年,JAVA基本每年都是全世界使用人數第一的語言。全世界數百萬的IT企業構建了龐大的JAVA生態圈,大量的軟件基于JAVA開發。JAVA也被譽為“計算機界的英語”。JAVA的應用范圍涉及所有行業、絕大多數IT企業,形成了龐大的生態圈。
如下是智聯招聘在一個月內、北京地區的JAVA人才需求量:
當月需求量25121個職位,我們以一個職位招聘3人,總量就是:25121*3=75363人。這還只是光北京地區??梢韵胂笕?、全國招聘的數量,以及由此形成的生態圈有多么龐大。
這個生態圈的影響力越來越大,需要的人才也越來越多。越多人會JAVA,就有越多軟件使用JAVA編寫,反過來促進需要更多的JAVA人才。 這就是著名的“馬太效應”,即“強者越強,弱者越弱”。
JAVA目前在:企業級軟件開發、安卓開發、大數據、云計算等方方面面都是主流的編程語言。跟著主流走,肯定錯不了。
02
什么人適合學習JAVA?
如果作為興趣來學編程,什么人都適合。畢竟,現在小學生都開始學習編程了。如果要作為職業來說,你到底適合不適合確實是個問題。
這里有六個現實的硬性指標,可以作為參考。
1)興趣度
興趣是基礎。如果你完全沒有編碼的興趣,敲鍵盤就頭大。那就完全屏蔽掉程序員這條路,不要強求,天無絕人之路,另一條路也許更適合你。作為程序員的基礎,至少不討厭敲代碼的感覺,這是最基本的。 越喜歡敲代碼這種感覺,你以后的路走的越順。
2)有沒有更好的其他發展路徑
當然,如果是我等普通屌絲群眾。學IT,仍然是逆襲最好的途徑。畢竟,這是一個憑技術、憑本事吃飯的職業。技術能力到年薪百萬的大有人在。
3)邏輯思維能力
這是作為程序員最基本的要求。
4)英語
對于初級程序員英語要求不高,如果想往頂尖技術發展,英語能力有必要提高。
5)數學
如果要搞人工智能、大數據等開發,一些高等數學、線性代數、概率等知識還是有很多用處的。當然,等你用到時再翻書也來得及。
6)職業發展穩定
JAVA歷經十多年,都是穩居第一位,可見的未來也是非常穩定的開發語言。JAVA行業的一大特點就是穩定,發展空間大。
作為JAVA程序員工資從:4000月薪,10萬月薪都有。不像前幾年火爆的IOS,火了3年,現在斷崖式的下跌。JAVA就像一列火車,行駛非常穩定。
JAVA程序員分為:初、中、高、架構、總監,5個修煉檔次。足夠我等普通屌絲奮斗終生了。
按年限劃分的話,大體是這樣:
1). 初級程序員工作年限:1-3年月薪:4K-15K
2). 中級程序員工作年限:3-5年月薪:10K-20K
3). 高級程序員工作年限:5年以上月薪:15K-30K
4). 架構級別工作年限:5年以上月薪:25K-40K
5). 總監工作年限:5年以上月薪:40K以上(年薪百萬也大有人在)
03
怎么學習JAVA?
JAVA編程的學習分為:入門、初級、中級、高級、架構幾個階段。
1)入門
入門大家需要掌握的JAVA知識有:JDK的安裝和配置、eclipse開發環境的使用、變量、控制語句等基本知識的掌握。
2)初級
JAVA的初級我們需要學習JAVASE基本知識,這是我們以后工作的基礎。在這個階段,學會使用API、理解面向對象將是初學者首要面對的問題。
JAVASE中需要熟練掌握的有:面向對象、異常、常用類、數組、容器、IO流、多線程、網絡編程。 這些都需要大家熟練掌握,都是以后工作必須用到的內容。
3)中級
中級面臨的學習任務比較龐雜,不只學習JAVA, 還需要學習其他技術。通常,中級學完就可以參與企業項目的開發了,可以自己做出漂漂亮亮的項目。
我們需要學習三塊知識:
1. SQL查詢和1-2種數據庫(通常是:oracle、mysql)
2. 網頁技術:HTML5、CSS、JavaScript、Jquery
3. 服務器編程JAVAEE:Servlet、JSP、數據庫操作技術:JDBC、Tomcat服務器
記?。?ldquo;實戰是檢驗實力的唯一標準”,“沒有實戰的學習,是假學習;沒有實戰檢驗的能力,是假能力”。
4)高級
高級階段是大量框架的學習和使用,畢竟這是在企業中實際使用的。目前需要掌握的有:Spring、Spring MVC、Mybatis、Struts2、Hibernate、Maven、shiro、lucene等技術。
高級階段表面看來是一些框架技術的學習和使用。對于“有潛力的高手來說”,實際上你會發現這只是“JAVA基礎的升華”而已。
5)架構
作為JAVA程序員學到高級課程已經完全具備初中級程序員的基本素質,和真正有3年開發經驗比的人,你缺的就是經驗,技術的廣度已經足夠。
如果想從程序員更進一步,那就是架構師和總監。這個時候,你必須要有深厚的技術功底、豐富的項目經驗、豐富的行業經驗。從技術上來說,你需要深入學習如下技術:
并發編程、ActiveMQ技術、ZooKeeper、Netty通信框架、JVM虛擬機底層優化、Redis、Nosql、數據庫底層優化、RocketMQ、Dubbo分布式服務、Storm、Kafka、Nginx、FastDFS等。
04
JAVA培訓適合你嗎?
培訓重要嗎?對于有的人很重要,對于有的人完全可以無視。要理解這個問題,我們首先要明白培訓的核心優勢是什么?
其實就兩點:
1、節省時間、有老師帶、有學習氣氛,快速提高,快速就業
2、形成圈子
“節省時間”是很多人考慮是否培訓的首要因素。畢竟,5個月沒日沒夜的學習,可以抵得上松松散散學習兩年的效果。 把節省下的1年半去工作賺錢,其實更劃算。 但是,對于時間不是特別敏感的人群,培訓不會特別重要。比如:大一、大二的學生。
但是,對于普通大學生來說,參加JAVA培訓,你在5個月時間形成的同學資源也是非常重要的發展資源。這些同學畢業后,都是一個行業,保不齊有什么機會互相拉扯一把,參加培訓將會給你帶來非常好的效果。