7年java水平_7年Java开发(月薪37K)分享正确的自学路线,不喜勿喷
7年Java開發(fā)(月薪37K)分享正確的自學(xué)路線,不喜勿噴
原創(chuàng)編程仔日常2020-10-13 10:18:21
趁著昨晚空閑和今早的時(shí)間,編輯這一篇帖子,寫下當(dāng)初我自學(xué)Java走的彎路,希望大家引以為戒,不要多走前人走過的彎路,浪費(fèi)時(shí)間。到今年年底結(jié)束,我做Java開發(fā)已經(jīng)七年的時(shí)間了,現(xiàn)在月薪37k已經(jīng)算知足了,但是距離我年薪百萬的目標(biāo)還有很長的路要走,而以后靠的不能僅僅是技術(shù),更是一些管理和帶人方面的知識(shí)和頭腦。因?yàn)樵?jīng)自己自學(xué)Java的時(shí)候走了不少的彎路,今天想做下總結(jié):
彎路一:盲目的去學(xué)當(dāng)初我在對(duì)于Java這個(gè)行業(yè)什么都不了解的情況下,比如:不知道未來發(fā)展趨勢,不知道學(xué)習(xí)Java應(yīng)該注意哪些初始問題,不知道具體的學(xué)習(xí)規(guī)劃學(xué)習(xí)路線等等,一味的買書看書,看視頻,到了中期階段萌生放棄的想法,和主要是因?yàn)橛X得自己越學(xué)越迷茫,也知道自己這樣學(xué)找不到工作,這是初學(xué)者最大的誤區(qū)。
彎路二:沒人指點(diǎn)。在之前,Java對(duì)于我來說是從來不了解的行業(yè),而我當(dāng)時(shí)從來沒有想過找一個(gè)這個(gè)行業(yè)比較厲害的人去請(qǐng)教下,現(xiàn)在我終于認(rèn)識(shí)到了一點(diǎn)什么叫“方法不對(duì),努力白費(fèi)”所有的Java大神都有自己的學(xué)習(xí)方法,而學(xué)Java的學(xué)習(xí)也基本是一致,而對(duì)于一個(gè)什么都不懂的初學(xué)者根本不會(huì)知道怎么學(xué),這也是造成失敗的最直接原因。所以學(xué)Java一定要有人指點(diǎn)。
彎路三:盲目看書對(duì)于新手來說,學(xué)習(xí)一個(gè)技能肯定是買書看書,但是后來我才實(shí)踐的證明,對(duì)于一個(gè)啥都不懂的初學(xué)者來說看書基本可以成為無用的,因?yàn)檫@樣的結(jié)果就勢必會(huì)造成大多數(shù)人的情況:能看懂,但是永遠(yuǎn)不會(huì)寫,這就是我最初出現(xiàn)的問題,非常煩人,所以建議初學(xué)者少看書,多動(dòng)手,必須弄清楚Java的效率學(xué)習(xí)方法。
學(xué)習(xí)Java確定切記三點(diǎn):
1.少看書,多動(dòng)手,手別懶 。
2.初學(xué)的問題,不要覺得自己很NB,該找人問就找人問。
3.學(xué)Java的人很多,同時(shí)放棄的占據(jù)80%。
很多人在學(xué)習(xí)的時(shí)候會(huì)擔(dān)心自己的學(xué)歷找不到工作,說下我對(duì)于這個(gè)事情的理解,現(xiàn)在這個(gè)社會(huì)好像在說學(xué)歷越來越重要,我個(gè)人并不是這樣認(rèn)為的,如果一個(gè)人因?yàn)閷W(xué)歷而不去學(xué)習(xí)技術(shù),一直做又臟又累的活,那他可能就是這樣的命運(yùn)。人不會(huì)因?yàn)閷W(xué)歷而不是學(xué)習(xí)技術(shù),至少學(xué)歷無法改變,但是你總可以改變其他的東西。是否應(yīng)該去培訓(xùn)?我個(gè)人的建議不應(yīng)該去培訓(xùn),根據(jù)現(xiàn)在行情來看,四個(gè)月培訓(xùn)出來找不到工作的人很多,而且還要辭掉工作,這樣做法是不理智,建議在線上學(xué),這樣可以降低很多成本,還有人指導(dǎo),可以邊工作邊學(xué)。
關(guān)于在校的學(xué)生如何學(xué)Java:
我見過很多在校學(xué)生大學(xué)四年都是混過來的,在目前來看,我們可以把他看成是正常的現(xiàn)象,到了大四的時(shí)候,很多人就開始恐慌找工作的事情,那個(gè)時(shí)候想學(xué)業(yè)沒有學(xué)習(xí)的心,一直在糾結(jié)之中,這就是畢業(yè)學(xué)生的迷茫。所以現(xiàn)在大二大三的學(xué)生一定要吸取前面人的教訓(xùn),不要等著大學(xué)混了四年,然后去還債。不知道要用多少的時(shí)間才能還回四年欠下的債。
1、關(guān)于學(xué)習(xí)。Java開發(fā)的技術(shù),主要靠自學(xué)應(yīng)該,可能有些大學(xué)開的課有相關(guān)方面的課程,但新技術(shù)還是要自己去學(xué)習(xí)。另外,知識(shí)學(xué)的好,不如東西做的好,要多練習(xí)多多練習(xí)多總結(jié)經(jīng)驗(yàn),做出來東西擺出來讓別人看,且看著是那個(gè)樣,看著舒服,才是王、道,而你懂的多,但就是動(dòng)手能力不行,讓你做個(gè)東西,做半天做不出來,那別人會(huì)怎么想,可想而知。
2、關(guān)于代碼編寫:建議初學(xué)者脫離可視化編輯器,練習(xí)手寫代碼能力,這樣看似麻煩,笨拙,但堅(jiān)持下去,真正到你進(jìn)行設(shè)計(jì)時(shí)就會(huì)體會(huì)到其中甜頭。手寫代碼,對(duì)于你對(duì)代碼的理解是很有幫助的,同時(shí)也會(huì)便于編寫更具有語義的代碼。
3、關(guān)于學(xué)習(xí)方法:自己不理解的實(shí)在想不明白就百度一下,或者到各大論壇去提問,請(qǐng)高手幫你解決,不要不好意思,當(dāng)然去的時(shí)候盡量提些有技術(shù)含量的問題,基礎(chǔ)知識(shí)不懂了就去翻翻書。要經(jīng)常逛論壇,向高手學(xué)習(xí)經(jīng)驗(yàn),有機(jī)會(huì)大家可以去看看,里面高手很多。
可以自學(xué),但是要有一個(gè)老司機(jī)當(dāng)你師傅,你就會(huì)進(jìn)步非常快。書上和教程上的知識(shí)點(diǎn)并不難,難的是具體問題的處理,這時(shí)候,老司機(jī)有經(jīng)驗(yàn),他能指導(dǎo)你,讓你少走彎路。其實(shí)感覺還有很多東西要說。可忽然又了種“想要說些什么又不知從何說起”的感覺。最主要的原因我困了。。。也都是想到哪些到哪。如果有什么問題大家可以直接問,知無不言,言無不盡。對(duì)于我這種市井小民,除了沙發(fā)上的屁股印,能幫到別人同樣也可以提升我的存在感,好讓我出現(xiàn)一種這個(gè)世界需要我的錯(cuò)覺。哈哈。
想要通過自學(xué)Java技術(shù)從事這方面的崗位工作,你需要掌握的技術(shù)知識(shí)點(diǎn)有這些:
第一階段:Javase:java基礎(chǔ),既然是基礎(chǔ),那肯定是最重要的,所以學(xué)習(xí)的時(shí)候也是需要重點(diǎn)學(xué)習(xí)的地方。
第二階段:數(shù)據(jù)庫:為什么要學(xué)數(shù)據(jù)庫呢,因?yàn)槲覀兊膚eb數(shù)據(jù)需要持久化到磁盤上統(tǒng)一管理,而數(shù)據(jù)庫無疑就是最好工具。目前主流的關(guān)系型數(shù)據(jù)庫有mysql 和oracle。我建議先學(xué)mysql。為什么呢mysql相比Oracle難度要低,而在國內(nèi)應(yīng)用場景又是最多的。學(xué)會(huì)了mysql可以開發(fā)出一個(gè)完整的產(chǎn)品了,再學(xué)oracle都可以的。
第三階段:前端基礎(chǔ):既然是做一個(gè)網(wǎng)站,那肯定不能是后臺(tái)的數(shù)據(jù),這樣用戶也是沒辦法看的,所以需要學(xué)習(xí)前端知識(shí),把數(shù)據(jù)展示到頁面上,而對(duì)于后臺(tái)人員來說,學(xué)習(xí)階段只需要學(xué)習(xí)前端基礎(chǔ)就可以了。Html 、js、css、jquery就可以了。當(dāng)然到離開后期你也可以學(xué)學(xué)專門為后端人員定制的前端框架,比如,layui,easyui。如果還覺得不夠可以學(xué)學(xué)前端專用框架。比如vue element ,但是大前提是把自己的后臺(tái)學(xué)到位了再學(xué)其他的。
第四階段:Javaweb:jsp、servlet。為什么用了html還要學(xué)jsp呢。因?yàn)閖sp和Java是無縫連接的。學(xué)了javaweb以后就可以自己做一個(gè)項(xiàng)目出來了,比如你想做一個(gè)個(gè)人網(wǎng)站。你可以給你們學(xué)校做一個(gè)教務(wù)管理系統(tǒng)都是可以的。
第五階段:Spring:后臺(tái)框架。為什么要用框架呢,可以快速開發(fā),并且降低了耦合。Spring的AOP支持允許將一些通用任務(wù)如安全、事務(wù)、日志等進(jìn)行集中式管理,從而提供了更好的復(fù)用,Spring的ORM和DAO提供了與第三方持久層框架的良好整合,并簡化了底層的數(shù)據(jù)庫訪問。
第六階段:Mybatis:持久層框架,當(dāng)然持久層還有一個(gè)框架應(yīng)用也很廣的,那就是hibernate,一個(gè)是半自動(dòng)的一個(gè)是全自動(dòng),而在國內(nèi)應(yīng)用最多的是mybatis,在國外用得最多的是hibernate,具體原因,大家可以百度查查。持久層框架有什么好處呢?如果你用原始的jdbc做開發(fā),那你得自己來管理每一個(gè)連接,連接的打開和關(guān)閉,都是有開發(fā)人員來操作的,而且jdbc也沒有實(shí)體的映射,需要我們寫代碼把值set進(jìn)去,而用了框架這些都交給框架去做了。
第七階段:Maven:mavne是一個(gè)工具,他的核心是pom.xml,這個(gè)配置文件,pom的全英文是project object model,意思是對(duì)象管理模型,也就是把項(xiàng)目也看成一個(gè)對(duì)象來操作了。給我們帶來最直觀的好處就是依賴問題,以前我們需要自己下載jar包,在構(gòu)建到項(xiàng)目中,但是有了maven只需要寫jar的依賴就可以自動(dòng)給我們下載了。
第八階段:Springboot:springboot是基于maven的,springboot最明顯的特點(diǎn)就是開箱即用,也就是構(gòu)建了一個(gè)springboot項(xiàng)目 直接就可以做開發(fā)了,而不需要像我們自己配一個(gè)springmvc的框架一樣的需要去配置大量的xml文件。讓我們開發(fā)人員更著重于業(yè)務(wù)上的開發(fā)。
第九階段:Redis:前面的mysql,oracle是關(guān)系型數(shù)據(jù)庫,什么是關(guān)系型呢,就是一對(duì)一 一對(duì)多 多對(duì)多。有表與表之間有這些關(guān)系在,所以就叫關(guān)系型數(shù)據(jù)庫,而redis就是非關(guān)系型數(shù)據(jù)庫,也就是他存儲(chǔ)數(shù)據(jù)之間是沒有這些關(guān)系,他是以鍵值對(duì) list set方式存儲(chǔ)的。
第十階段:Springcloud:微服務(wù)框架,什么是微服務(wù)呢,就是把我們傳統(tǒng)的單體服務(wù)拆分開了,就是將一個(gè)單體架構(gòu)的應(yīng)用按業(yè)務(wù)劃分為一個(gè)個(gè)的獨(dú)立運(yùn)行的程序即服務(wù),微服務(wù)架構(gòu)其實(shí)就是一個(gè)分布式架構(gòu),具體的就不詳細(xì)的講了,因?yàn)檫@里面牽涉到的解決方案是靈活的。
第十一階段:Linux:linux的應(yīng)用通常都是在底層,那我們上層開發(fā)人員為什么也要學(xué)它呢,其實(shí)我們的主要應(yīng)用是在服務(wù)器上,也就是服務(wù)器的系統(tǒng)。當(dāng)然系統(tǒng)也有Windows的,而Windows的和Linux的區(qū)別就是Windows服務(wù)器有問題是微軟來解決,很方便:別人替你做,但也不方便:你遇到問題都得讓他官方來解決漏洞,但是Linux就不一樣,他是完全開源的,有問題自己馬上就可以解決,只要開發(fā)人員能力夠硬去改內(nèi)核都是可以的。
第十二階段:Git:版本管理工具,與之對(duì)應(yīng)的還有svn,最大的區(qū)別在于git是分布式系統(tǒng),而svn不是分布式的,因?yàn)槟銈冞M(jìn)企業(yè)以后都是協(xié)同開發(fā) 也就是一個(gè)項(xiàng)目小組里面幾個(gè)小伙伴一起開發(fā)一個(gè)項(xiàng)目,所以就要有一個(gè)代碼的管理工具來保證你們做的不同模塊可以整合,所以說git也是需要學(xué)的。
最后在這里啰嗦一下,零基礎(chǔ)想要通過自學(xué)Java技術(shù)從事這方面的崗位工作,你需要具備以下幾點(diǎn)素質(zhì):
第一、有超強(qiáng)的學(xué)習(xí)耐心及進(jìn)取心。
第二、手不懶,代碼寫的足夠多,熟能生巧。
第三、有一定的學(xué)習(xí)能力,善于自學(xué)善于自己解決問題。
第四、可以獨(dú)立寫一些簡單的項(xiàng)目。
以上的內(nèi)容我都是完全站在Java初學(xué)者的角度來說,就是希望能用通俗易懂的語言讓大家清晰的明白學(xué)習(xí)Java全面系統(tǒng)的學(xué)習(xí)內(nèi)容,以及應(yīng)該達(dá)到什么程度才能拿到一份Java工作的offer,希望可以你帶來幫助。
如果你現(xiàn)在也在學(xué)習(xí)Java,在入門學(xué)習(xí)Java的過當(dāng)中有遇見任何關(guān)于學(xué)習(xí)方法,學(xué)習(xí)路線,學(xué)習(xí)效率等方面的問題,可以隨時(shí)關(guān)注并私信我:01。我都會(huì)根據(jù)大家的問題進(jìn)行針對(duì)性的解答。
總結(jié)
以上是生活随笔為你收集整理的7年java水平_7年Java开发(月薪37K)分享正确的自学路线,不喜勿喷的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用canvas给图片添加水印, can
- 下一篇: 电动取暖器、加热器、暖风机UL 1278