2018最新Java學(xué)習(xí)路線,技術(shù)要求與項(xiàng)目推薦詳解!
回顧2017年,java發(fā)展的程度超乎了我們的想象,對技術(shù)的要求也越來越高,從原先的前端,后端的分布,到現(xiàn)在企業(yè)要求的全棧,對于個(gè)人能力的要求是逐步提高的,那我們現(xiàn)在究竟應(yīng)該怎么學(xué)習(xí)?下面小編給大家整理了一套學(xué)習(xí)路線,分析給各位看看。
這個(gè)我可以給各位說明一下,本學(xué)習(xí)路線和技術(shù)要求都是符合阿里巴巴技術(shù)要求的,即使你不能去阿里,那么這些技術(shù)也能在各大企業(yè)落腳了,接下來正式開始分析。
很多人認(rèn)為,java的基礎(chǔ)應(yīng)該是C語言,這個(gè)不可否認(rèn),但是也不能說完全正確,因?yàn)閮蓚€(gè)語言技術(shù)的內(nèi)涵是不一樣的,C語言是面向語言編程而java語言是面向?qū)ο缶幊?,打個(gè)比喻,C語言大多數(shù)是做系統(tǒng)應(yīng)用,而java是做企業(yè)級應(yīng)用的。所以,學(xué)Java不一定要學(xué)C,Java簡化了C,而在這里,我們把web列為是Java的基礎(chǔ)部分,為什么這么安排?因?yàn)橄鄬τ诤笈_(tái),前端稍微簡單一點(diǎn),其次作為全棧工程師,我們也是必須了解前端的。
知識(shí)要點(diǎn):
項(xiàng)目實(shí)戰(zhàn)推薦:
基礎(chǔ)篇之JavaScript
為什么要把JS從前端基礎(chǔ)中單獨(dú)的分離出來呢?因?yàn)镴S在前端中占得位置比較重,什么意思呢?我們把頁面看成一張紙,這張紙有顏色是不夠的,我們必須讓他“鮮活起來”那我們就要用到“馬良筆”而這支筆就是JS,他增加了頁面的動(dòng)態(tài),也能做到和后臺(tái)的交互,是比較重要的知識(shí)點(diǎn)。
知識(shí)要點(diǎn):
項(xiàng)目實(shí)戰(zhàn)推薦:
進(jìn)階篇之JavaSE
在進(jìn)階學(xué)習(xí)中,我們就分為兩個(gè)部分了,一個(gè)是JavaSE,另一個(gè)是JavaEE,這兩者是什么意思呢?SE的應(yīng)用一般是窗口化應(yīng)用,例如QQ客戶端類似方面,而EE是指網(wǎng)頁端較多,例如天貓這樣的項(xiàng)目,而這又是框架知識(shí)的基礎(chǔ)了。還有一種是ME,這里就不多做說明了,因?yàn)镸e大部分是手機(jī)端的開發(fā),其火熱程度不足前者。
知識(shí)要點(diǎn):
項(xiàng)目實(shí)戰(zhàn)推薦:
進(jìn)階篇之?dāng)?shù)據(jù)庫篇
數(shù)據(jù)庫一直在各項(xiàng)編程中占據(jù)了重要地位,不用說大家也知道,數(shù)據(jù)在哪里來,放哪去,各種功能的實(shí)現(xiàn),都是離不開數(shù)據(jù)庫的,而數(shù)據(jù)庫的知識(shí)相對來說比較簡單,我們選擇在進(jìn)階時(shí)一起學(xué)習(xí),運(yùn)用起來更拿手。
知識(shí)要點(diǎn):
在這之中不得不提云數(shù)據(jù),現(xiàn)在比較流行的一種技術(shù),什么東西都是某某云,說的就是這個(gè)。
項(xiàng)目實(shí)戰(zhàn)推薦:
進(jìn)階篇之JavaEE
從上文中我已經(jīng)說到了,JavaEE是偏向于網(wǎng)頁端的一種開發(fā)技術(shù),在這里就不做過多介紹,不過JavaEE應(yīng)該是企業(yè)應(yīng)用最火的技術(shù)了,大至華為阿里,小到小說網(wǎng)頁,都離不開JavaEE技術(shù),看到這里,你應(yīng)該對自己未來偏向哪個(gè)方面要有數(shù)了。(PS:框架是基于JavaEE的,例如SSH SSM等)
知識(shí)要點(diǎn):
項(xiàng)目實(shí)戰(zhàn)推薦:
高級篇
企業(yè)級技術(shù)中高級技術(shù)基本上就指的是框架,如今比較流行的框架有兩個(gè)SSH(Struts Spring Hibernate)和SSM(Struts SpringMVC Mybatis),差別在于SSH適用于大型企業(yè),相對復(fù)雜,但是安全高效,大型項(xiàng)目處理起來也是隨便的,SSM偏向于中小型企業(yè),因?yàn)樗鄬SH框架要更“輕”一些,兩者框架既有不同之處又有相同之點(diǎn),只是看企業(yè)的選擇。
知識(shí)要點(diǎn):
補(bǔ)充:
一般大家覺得學(xué)到這就結(jié)束了,其實(shí)不然,java對技術(shù)的要求不僅局限在框架為***級,應(yīng)該是有部分延伸的,例如下面的知識(shí)點(diǎn)。
那么這就算完了嗎?總體來說可以算是完了,但是作為阿里技術(shù)要求,這顯然是不夠的,比如說,天貓雙十一,數(shù)以千萬的人們購物,服務(wù)器承載能力夠嗎?你也不知道吧,萬一不夠怎么辦?這就有更高要求了,高并發(fā),負(fù)載均衡等。如果你搞定了這些,恭喜你,等著offer吧。
項(xiàng)目實(shí)戰(zhàn)推薦:
到這里,Java學(xué)習(xí)就可以說是暫時(shí)告一段落了,截止2018,技術(shù)要求就是這些,這并不是小編隨便吹的,阿里對Java的要求的確就是這些了,當(dāng)然時(shí)代在發(fā)展需求在增加,未來技術(shù)的要求會(huì)更高我們還需要繼續(xù)學(xué)習(xí),絕對不能局限在這里。
講個(gè)題外話
1.大學(xué)學(xué)的東西夠嗎?
答:很顯然是不夠的,在校大學(xué)生們應(yīng)該清楚,上述內(nèi)容大部分大學(xué)是沒有涉及的,并不是因?yàn)椴唤?,而是因?yàn)?**大學(xué)課本不是隨便寫的,怎么個(gè)方案都是商量好再經(jīng)過教育局批準(zhǔn)的,一般是在5年不動(dòng),5年前,這些技術(shù)還沒發(fā)展起來所以現(xiàn)在也沒教,第二就是,大學(xué)不會(huì)教太難的東西,很多專科學(xué)生底子不好,學(xué)的慢也吃力,一般大學(xué)就會(huì)教基礎(chǔ),不會(huì)太過深入,不然畢業(yè)的人就會(huì)少一半了!
2.數(shù)學(xué)和英語不好能學(xué)嗎?
數(shù)學(xué)和英語雖然和編程有所掛鉤但是問題并不大,數(shù)學(xué)方面如果你不做大數(shù)據(jù),那就沒什么問題了,英語的話,其實(shí)編程就那么幾個(gè)關(guān)鍵詞幾個(gè)語句,你連游戲人物說話都記得住,還怕記不住這點(diǎn)英文?
3.轉(zhuǎn)行的人能等嗎?
其實(shí)我可以告訴大家,程序員30歲已經(jīng)算高齡了,黃金五年,你還能等多久呢?所以說轉(zhuǎn)行java和開發(fā)要趁早,晚了就算你有技術(shù),年齡也是問題,自己也吃不消程序員的加班熬夜!這一行收入在提高,門檻在提高,不會(huì)等你。
4.自學(xué)行嗎?
這個(gè)我就不多說了,自學(xué)?一百個(gè)人可能有那么幾個(gè)成功的個(gè)例,但你別認(rèn)為自己就是那100之一,自學(xué)彎路走的多,時(shí)間慢效率低,沒有一個(gè)系統(tǒng)的學(xué)習(xí)方法,今天你看到這了 你就學(xué)這個(gè),明天看到那了學(xué)那個(gè),東西都沒鞏固,一到做項(xiàng)目什么都不會(huì)了,所以學(xué)java盡量減少自學(xué),別埋頭苦干。