二哥诊沪,我是一名大學生养筒,專業(yè)是電力工程,但想自學 Java端姚,如何快速打好基礎呢晕粪?
微信上 tison 向我提出了這個問題。我想我是有資格來回答的渐裸,從北京奧運會那年開始學 Java巫湘,到現(xiàn)在已經(jīng)有 10 多個年頭了,真的是從一名編程白癡一步步走到現(xiàn)在的昏鹃。
我在各大技術網(wǎng)站上分享了不少 Java 方面的原創(chuàng)文章尚氛,不知道影響了多少初學者,反正文章的留言中經(jīng)常能看到他們由衷的感謝《床常現(xiàn)在每天仍然有不少同學(tison 是其中之一)加我微信阅嘶,問我怎么一路過來的,希望能夠把寶貴的經(jīng)驗分享出來载迄,讓他們少走一些彎路讯柔。 借這個機會,就統(tǒng)一回答下护昧。
既然要快速魂迄,咱就沒法面面俱到,必須挑重點捏卓、講實用极祸。下面就根據(jù)我的實戰(zhàn)經(jīng)驗,談一談具體的學習過程怠晴。
01遥金、準備
學習之路是一項很逆人性的差事,并不是每個人都能夠堅持下來蒜田,尤其是打基礎的階段稿械,過于強求的話可能就會適得其反,沒入門先放棄了冲粤。
1)對 Java 感興趣美莫,對互聯(lián)網(wǎng)的高薪感興趣页眯,對“程序員禿頂”的段子視若無睹,只有這樣厢呵,你才能真正地堅持下去窝撵。
2)富有堅韌不拔的學習能力,別總遇到一點點困難襟铭,就自暴自棄碌奉。
3)設定一個目標就死磕,如果你經(jīng)常拿不到最終結果寒砖,需要反思是不是從來沒有成功做成過一件困難的事情赐劣,沒成功過所以不知道“堅持”可以大大提高成功的概率。
4)擁有解決問題的勇氣哩都,學習的過程中注定會遇到許許多多的坑魁兼,要敢于跳進去,然后再爬出來漠嵌,并且是在不尋求他人幫助的前提下咐汞。我見過太多的同學,遇到點屁大的問題就直接扔在群里等大牛解答献雅,殊不知搜索引擎是第一步碉考。
02、書籍
高爾基曾說過:“書籍是人類進步的階梯挺身。”這是至理名言锌仅,打 Java 基礎的過程中必須要耐著性子去讀完兩本書:《Head First Java》和《Java 核心技術卷一》章钾。
上大學那會,老師要求我們讀的入門書是《Java 編程思想》热芹,這本書確實值得讀贱傀。但是很可惜,那時候我實在是看不懂伊脓,硬著頭皮上也看不懂府寒,感覺在看甲骨文一樣。10 多年過去了报腔,如果讓我來推薦 Java 入門書的話株搔,我不會推薦這本。
《Head First Java》是一本非常有趣的書纯蛾,作者挑選的插圖可以說張張經(jīng)典纤房,真正實現(xiàn)了“圖文并茂”的需求,搞得你感覺有點不好意思翻诉,仿佛不是在讀一本技術書炮姨,而是在讀《知音》捌刮。
不只是圖片,還有游戲舒岸、拼圖绅作、解謎題以及你意想不到的內(nèi)容。真的是一點都不“正經(jīng)”蛾派,正因為如此俄认,閱讀起來才會感覺興趣盎然嘛。
《Java核心技術卷一》雖然沒有《Head First Java》那么趣味化碍脏,但廣度和深度都恰到好處梭依。這兩本書雖然都比較厚,但讀起來并不會覺得頭大典尾,因為都算是通俗易懂的入門書役拴。我建議你把書中的實例都在電腦上跑一遍。有些內(nèi)容看不懂的話钾埂,就先跳過河闰,不要鉆牛角尖。這樣下來褥紫,粗略的估計姜性,需要 2 個月的時間。
最好的話髓考,每讀完一章部念,接寫一篇筆記出來,所謂好記性不如爛筆頭氨菇,在寫作的過程中儡炼,為了能夠把一個知識點說明白,你不會不自覺的學習到更多擴展的內(nèi)容查蓉,理解也會隨之加深乌询。這些筆記就好像你在學習過程中的榮譽勛章,以后再回看的時候豌研,也會覺得學習的日子過得很充實妹田。
02、視頻
可能你更喜歡看視頻教學鹃共,那么我也為你精心準備了一些鬼佣。這些視頻我已經(jīng)分門別類了,需要的話可以關注我的公眾號【沉默王二】及汉,按照下面的口令清單回復即可獲取沮趣。
Java 基礎視頻名稱 | 口令 |
---|---|
Java 基礎語法 | javaboy4096 |
Java 面向對象 | javaboy6148 |
深入面向對象和數(shù)組 | javaboy8200 |
Java 常用類詳解 | javaboy4105 |
Java 集合與數(shù)據(jù)結構 | javaboy2062 |
Java 數(shù)據(jù)結構和算法 | javaboy6184 |
Java IO 流全解析 | javaboy8209 |
Java 網(wǎng)絡編程 | javaboy6166 |
Java 異常機制解析 | javaboy6157 |
深入理解 Java 多線程 | javaboy4114 |
手動開發(fā)一個 Web 服務器 | javaboy2071 |
獨立開發(fā) SORM 框架 | javaboy8227 |
深入理解 Java 注解+反射 | javaboy8218 |
Java 23 種設計模式 | javaboy4123 |
學會 Java 正則表達式 | javaboy6175 |
JDBC 詳解 | javaboy2080 |
深入理解 Java 虛擬機 | javaboy2089 |
Java 解析XML文件 | javaboy8236 |
IntelliJIDEA 視頻教程 | javaboy4285 |
Java 編程規(guī)范 | javaboy4222 |
除此之外,我再推薦一門免費的公開課《老九零基礎學編程系列之 Java 入門》坷随,網(wǎng)易云課堂上可以直接觀看房铭。主講人徐嵩的授課風格非常風趣驻龟,聽起來很過癮,我最近沒事的時候就看一集缸匪,回味一下當初學 Java 時沒有視頻資料的苦澀翁狐。
看視頻和看書的體驗完全不同,在我看來凌蔬,通過視頻學習的好處主要有兩點:
視頻中講的東西比較形象露懒,有一種身臨其境的感覺。
視頻有一種你看不到的魔力砂心,可以提高你學習的自主性懈词。
03、Spring
Spring 目前在 Java 開發(fā)中占據(jù)了重要的一環(huán)辩诞,可以說是密不可分。毫不夸張的說译暂,不會 Spring,絕對算不上一名合格的 Java 開發(fā)人員外永。Spring 的核心概念是 IOC(控制反轉)和 AOP(面向切面編程)崎脉,這兩個概念掌握了伯顶,再學習 Spring 的其他衍生項目就會容易許多。
學習 Spring 的入門書祭衩,我推薦《Spring 實戰(zhàn)》,這本書學起來很快汪厨,并且書中提供的案例都很容易上手愉择,順著敲一遍。Spring MVC锥涕、Spring Boot衷戈、Spring Cloud 是工作當中最常用的三塊內(nèi)容殖妇,幾乎每一個成熟的正式項目都會用到其中之一,所以很有必要再花 2 個月的時間去入門一下破花。
04疲吸、其他知識
要想學好 Java,還有一些知識需要掌握摘悴,比如說 MySQL、MyBaits蹂喻,只有和數(shù)據(jù)庫打通,才算是打通了任督二脈捂寿。學習 MySQL 的話口四,推薦《高性能 MySQL》,很經(jīng)典的一本書秦陋;學習 MyBaits 的話蔓彩,直接看官方文檔就夠了。算下來的話踱侣,還需要再花 1 個月的時間入門粪小。
05、實戰(zhàn)演練
花了 5 個月的時間好不容易入了門抡句,接下來就需要一個實戰(zhàn)項目鞏固下探膊。這里我推薦好朋友江南一點雨的《微人事》,GitHub 上已經(jīng)開源待榔,搜索關鍵字“vhr”即可逞壁。這個開源項目很容易上手,文檔也很全面锐锣,目前標星已經(jīng) 1 萬多了腌闯,非常受歡迎。
這個項目學下來雕憔,預計還需要 1 個月的時間姿骏,你已經(jīng)算是一名合格的 Java 程序員了。
06斤彼、犯錯犯錯再犯錯
一定要敲代碼毁腿,在敲的過程中肯定會出錯撒顿。不管你是在看書,或者文章,還是視頻臣嚣,你覺得作者說得好像挺簡單的鼎姐,以為看過一遍后自己也理解了象泵。當往往不是這樣的文搂,程序在敲的過程中會發(fā)生許許多多意想不到的問題,有時候作者限于篇幅的原因,往往會選擇性地跳過一些細枝末節(jié)土陪,但這些對于編程的初學者來說昼汗,往往很難駕馭。只有經(jīng)過自己的手敲出來旺坠,才能證明真的是會了乔遮,懂了。
不是有那句俗話嘛取刃,“當局者迷旁觀者清”蹋肮,如果你站在讀的角度,就會很容易自欺欺人璧疗;但如果自己親自實操的話坯辩,就完全不一樣了,不僅印象深刻崩侠,還為以后的復盤做好了備份漆魔。在敲的過程中,最好把自己認為經(jīng)典的案例分門別類却音,放到 GitHub 上或者碼云上系瓢,等到以后再用的時候,也好找——書到用處方恨少欠拾,代碼也是骗绕。
出錯了沒關系,把錯誤解決掉的過程中你能聽到自己成長的聲音荆忍,就好像雨后春筍一樣撤缴。沒有出錯的同學要么是天才腹泌,要么就是蠢材(復制粘貼)凉袱。
07、最后
按照我說的方法钟鸵,頂多半年時間涤躲,就可以打好很堅實的 Java 基礎了。如果你在學習的過程中遇到問題蒙袍,也歡迎隨時和我交流害幅。切記岂昭,要堅持,三天打魚兩天曬網(wǎng)只會打不到魚還會弄破了網(wǎng)邑遏。
怎么樣记盒?這篇文章絕對值得點贊和收藏吧枢里?趕緊行動起來!