我自學(xué)java的經(jīng)歷
現(xiàn)在網(wǎng)上自學(xué)java的人比較多,平時(shí)看見(jiàn)網(wǎng)上很多的人問(wèn)自學(xué)java需要注意什么或者應(yīng)該怎么去自學(xué)java,下面我就結(jié)合自己自學(xué)java的一些經(jīng)驗(yàn),來(lái)給大家講講,希望能夠?yàn)槟鷰?lái)一定的幫助。

1.當(dāng)時(shí)大二模模糊糊,上課大概學(xué)了數(shù)據(jù)結(jié)構(gòu),c語(yǔ)言。數(shù)據(jù)結(jié)構(gòu)是非常重要的基礎(chǔ),一般大學(xué)的數(shù)據(jù)結(jié)構(gòu)對(duì)大多數(shù)工作已經(jīng)夠用了。
2.看某一方面的視頻進(jìn)行編程入門,邊看邊寫,找編寫代碼的感覺(jué),去理解何為面向?qū)ο?。學(xué)習(xí)spring boot,mybatis,hibernate,spring mvc。這時(shí)候你可以拿著寫個(gè)什么xxx管理系統(tǒng)練手。
3.完成2,相信你已經(jīng)熟悉了java基礎(chǔ),比如集合,反射,多線程。常用的框架也熟悉了,這個(gè)時(shí)候應(yīng)該可以去實(shí)習(xí),或者有份工作了,在工作中去實(shí)踐。然后可以去讀《深入理解java虛擬機(jī)》,《java并發(fā)編程實(shí)戰(zhàn)》《java8 實(shí)戰(zhàn)》。
4.這時(shí)候可以去看設(shè)計(jì)模式了《Head first Design Pattern》,然后讀jdk util包,spring源碼去體會(huì)設(shè)計(jì)模式。帶著為什么要這樣實(shí)現(xiàn)的問(wèn)題去看源碼。
5.這時(shí)候你的java底子應(yīng)該不弱了,那應(yīng)該要去理解一些分布式系統(tǒng)的東西,比如分布式事務(wù),鎖,消息中間件,了解spring cloud,Dubbo,學(xué)會(huì)微服務(wù)治理。想象一下你設(shè)計(jì)的系統(tǒng)如何抗住雙

6.好吧感覺(jué)已經(jīng)很厲害了,但是如何快速迭代開(kāi)發(fā)呢?devops是什么?docker,k8s是什么?如果快速敏捷的開(kāi)發(fā),如何管理團(tuán)隊(duì),知識(shí)需不需要進(jìn)一步提升和不錯(cuò)?計(jì)算機(jī)數(shù)據(jù)結(jié)構(gòu)和算法需不需再拿出來(lái)升華?
總結(jié):程序=算法+數(shù)據(jù)結(jié)構(gòu) 這才是最根本最重要的,技術(shù)路上能走多遠(yuǎn),基礎(chǔ)非常重要,多學(xué)點(diǎn)數(shù)學(xué),計(jì)算機(jī)科學(xué)這些百利無(wú)一害。還有保持一顆好奇心,探索浩瀚的計(jì)算機(jī)科學(xué)實(shí)踐。不僅僅是java。

