你可能覺得自己能一天學習8小時,實際上平均下來每天能學4小時都算厲害了。總會有各種原因,比如當天內(nèi)容太難,公司聚會,要出差等等。如果周末你也是堅持學習,那么最理想狀況下,6個半月就可以學完,達到工作后能被人帶的水平。但我知道那其實基本不可能。我自己從完全零基礎,到學C語言,到學Java,除去中間斷開的兩個月,已經(jīng)學習10個月。當然,這和我邊工作邊學習,以及沒有人幫我找資料有很大關系。很多時間花在找資料上了。如果你已經(jīng)經(jīng)歷過JavaSE的洗禮,會明白,我這篇回答對現(xiàn)在迷茫的你份量有多重。
以下正文:
我15年畢業(yè),大學日語專業(yè)。16年9月18日開始決定學編程。
【1,啟蒙階段】
同樣地,花了3天經(jīng)歷了入門語言選python還是C的糾結后,我最終選擇看杭州天眼老師的直播還有學習資料。具體學習方法加qq群1098365719,希望對你有幫助:
這個階段與其說學C,不如說懂一些基本的編程知識,比如:循環(huán)結構,數(shù)組,簡單的內(nèi)存分配原理,指針概念等。郝斌老師的C語言視頻,對小白非常友好,啟蒙教育做得很好!
如果時間不是很寬裕,可以直接從下面的JavaSE視頻開始,看自己能否接受。
如果時間比較寬裕,喜歡循序漸進,培養(yǎng)興趣了解一些計算機知識,那么可以看看。
我個人覺得郝斌老師講課很有魅力,我喜歡聽他嘮嗑。像一位好朋友娓娓道來。
(很多人不學C也能很好學習Java,大家自己看著辦)
【2,JavaSE基礎】
JavaSE階段,建議完全零基礎的朋友,直接看劉意老師的,輔助看畢老師的。當然,也可以都試看一下再決定,每個人喜好不同。放心,完全零基礎的朋友,一遍肯定學不會。所以同一套視頻看兩遍都算少了。另外,有時一個老師的觀點是片面的,要結合不同老師的講解才可能對一個知識點有更全面深刻的理解(前提是先把一個老師的講解吃透)。所以我是建議劉意和畢向東的都至少看兩遍。
具體建議后面會給出。
<對零基礎學習者的建議>
0,看視頻學習,不要看書學習。我自己是日語專業(yè)的,此前完全沒有接觸過編程,對編程是完全沒概念的。知乎上很多人都說看視頻慢,建議直接看優(yōu)秀的書籍,所以我就買了C語言的一些書和Java的一些書(都是初學入門的),但都看不懂,看不下去。反而是后期跟著視頻學習一段時間后,再翻開書本(其實幾乎沒看過書),慢慢能知道書里在講什么了。大家千萬不要覺得看視頻會顯得自己學習能力不夠強。實際上,大學選擇計算機專業(yè)的同學,又有多少比例是不靠老師上課,自己躲圖書館把編程學會的呢?從這個角度來說,看視頻相當于大學課堂聽課。并沒什么不妥。
1,不懂的知識點視頻多看幾遍,如果視頻有配套筆記,第二天起來復習一遍,加深印象。自己也可用word做筆記,寫學習日志。JavaSE有不懂的,可以百度或谷歌,看看別人的技術博客。再回過頭看視頻可能就突然明白了。因為我也這么試過,對我?guī)椭艽螅M阋材茉囋嚒?/p>
2,根據(jù)視頻內(nèi)容畫思維導圖!
畫思維導圖的好處在我看來至少有兩個:
理清講解思路,讓自己有全局觀。初學Java,每一天的視頻剛聽完就基本忘得差不多了。很多知識點腦海中也只剩下一個名詞,具體講了什么已經(jīng)記不得!做筆記長遠來看是最省時間的。因為筆記內(nèi)容都是自己消化過的,后期不用再去看視頻復習(太麻煩了),直接看自己的筆記效率更高!反而蜻蜓點水,不做筆記一味求快的人,學到后面跟不上。因為這些知識點你只是聽懂了,而不是理解,也沒有實際編碼操作過,印象是不深的!!
方便日后復習,以及遺忘時的檢索回憶。
下面是我的思維導圖截圖(windows可以使用Xmind)
打開UC瀏覽器? 查看更多精彩圖片

打開UC瀏覽器 ?查看更多精彩圖片
思維導圖可以很好地幫助我們理清知識點
思維導圖要自己做,自己看,效果最好。看別人的基本沒效果。
3,初級階段不建議買任何書籍,專心看視頻和附帶的筆記足夠了。包括知乎上推薦的《head first Java》,《瘋狂Java講義》,《Java核心技術》都不太適合現(xiàn)階段完全零基礎的我們。太厚,知識點太詳細。要知道,我們現(xiàn)在剛學完C,才了解編程的循環(huán)語句而已。再怎么好的入門書籍,它對受眾也是有一定要求的。而這個階段的我們,就像小嬰兒,即使給我們一輛帶輔助輪的自行車,我們也騎不了...我買過一本《瘋狂Java講義》,就翻了幾次??粗苊苈槁橥耆皇煜さ闹R點,很煩躁很焦慮。當然,我不是說看書不好,只是本階段不推薦。至少我從零基礎到學習框架,從書本上學到的可能就占了0.5%,看博客學到的也比書本多。幾乎完全是靠視頻學來的。而且視頻也有源碼和筆記,已經(jīng)很方便。
對零基礎的學習者來說,JavaSE的學習非常困難。比如我,學了一個多月才學到畢老師的異常一章。之前在面向對象一章就已經(jīng)很崩潰,哪知異常也這么抽象,完全不知道它是干嘛的....很多人是科班出身,早就忘了當初自己連軟件都不會裝的窘境。就像我們現(xiàn)在根本不會覺得用筷子還需要學習,但你爸媽當年為了教你用筷子,可是頭疼過不止一次呢!
<JavaSE學習重點參考>
初學者也容易想走捷徑。我相信很多人都會有這個想法:能不能只學工作上要用的?根本原因是知識點真的太多了。以劉意老師視頻為例,面向對象(封裝,繼承,多態(tài)),異常,多線程,集合框架,IO,網(wǎng)絡編程都挺難的。其中面向對象是JavaSE的重中之重,里面的知識點個人認為是最難的。后面的知識點都是建立在這之上展開的,沒學好面向對象,后面就會稀里糊涂。
當然,也不是真的一點都不能跳,但最好完整地學下來。
按照后面JavaWeb的學習來看,我的建議是:
面向對象是基石,JavaSE中最重要的一是集合,二是IO,希望大家學習這兩個知識點時認真對待,多敲代碼,多思考。
常用API里,String及其相關類StringBuilder, StringBuffer等必須熟悉,后面會不斷用到。不學好的話,后面怎么死都不知道!
泛型一般只出現(xiàn)在集合中,個人覺得如果一時無法掌握,那么暫時會在集合中使用泛型就行了。
反射對于初學者來說是非常抽象的??!但它又無比重要。它雖然不是JavaSE的重點,但是它是JavaWeb很多難點的底層支撐,不懂反射,寸步難行。
重點
面向對象☆☆☆☆☆
集合☆☆☆☆☆
IO ☆☆☆☆☆
String/StringBuffer/StringBuilder ☆☆☆☆☆
反射☆☆☆☆☆
泛型☆☆☆☆
熟悉
異常
多線程
先過一遍
網(wǎng)絡編程
正則表達式
【3,JavaSE之后干嘛】
我當時學完畢老師的25天后,迷茫了很久...根本不知道下一步怎么走,該看誰的視頻好一點。后來才知道畢老師原來還有35天、30天、33天版的Java基礎視頻。但我已經(jīng)沒時間重新都看一遍了,直接開始了崔老師JavaWeb的學習。學到JDBC后發(fā)現(xiàn)基礎實在太差,學不下去。又回過頭學習了劉意老師的JavaSE視頻。
我覺得如果選擇一家培訓機構的視頻,就看他們?nèi)椎?。因為知識點安排和講課風格會大體接近,比較熟悉。當你發(fā)現(xiàn)視頻講得有點淺,說明你學的還不錯。此時你想理解得更深的話,不要再找視頻了,視頻都是給初學者的,點到即止(不論哪家的視頻)。直接去看書,《Java編程思想》保證夠深。但還是忍住,先往后學JavaWeb吧!
<JavaWeb學習重點參考>
【前端部分】
首先,學習html和css后記得做一個小案例,快速熟悉標簽使用。你可以不做,但是你會記不住。不信你試試。這是我當時看完視頻,完成的練手頁面:
打開UC瀏覽器? 查看更多精彩圖片

打開UC瀏覽器 ?查看更多精彩圖片
學習JavaScript的dom操作時,留個心眼,多關注。js的dom學好了,對后面學習xml的dom也會有幫助。dom4j重點練習,試著自己封裝一個小工具。這兩個dom都很重要。
JavaWeb的反射就當復習,好好學。
【JavaWeb核心技術】
tomcat一定要跟著視頻配置一遍。光看視頻是記不住的?。?/p>
Http協(xié)議和Servlet超級重要,多看幾遍,看一遍你會暈,東西太多了。建議做一下思維導圖,理清知識點。
request和response很重要,也很難。request域超級重要。多看幾遍,不要心急。
cookie、session、JSP很重要。多看幾遍,不要心急。session域超級重要。
JavaWeb總共四大域對象,都是很重要的。
day12-13,老實說,我只記得${EL表達式},知道怎么導入JSTL標簽庫<%@...>和核心庫的使用。其他的都忘了。
day14一定要跟著敲,因為后面的小案例都是在這個上面擴展。這個不敲,后面的敲不了!
day15-19算一個小周期,都是數(shù)據(jù)庫操作。還是那句話,跟著敲,才記得住。
day17~19JDBC的內(nèi)容是崔老師視頻的第一個精華?。?/b>其他視頻難以超越的講解??!搞清楚TxQueryRunner的編寫思想對后面學習框架和框架如何實現(xiàn)事務有四兩撥千斤的功效!
相比servlet,監(jiān)聽器和過濾器也挺重要,但老師有點一帶而過的感覺,暫作了解。
上傳下載和JavaMail挺復雜的。我反正第一次沒掌握,以后回過頭再學吧...但這些后面的項目會用到。
Ajax,很重要,但是對于我們可能有點難,但現(xiàn)在和json一起用的越來越多,要好好學!崔老師講的是原生Ajax,看完后去看就業(yè)班的就很容易了!
綜合練習,一定要敲,即使你覺得很難,也要硬著頭皮敲完。敲完以后,自信心暴漲,那時你自己對JavaWeb那些知識點是重要的哪些是次要就會有自己的理解。重要的知識點,在你心里沉淀出來。就是這么神奇!!
后面的基礎加強,崔老師視頻的第二個精華??!收獲也很大。直接提升到另一個境界。為學習框架做鋪墊。也算崔老師的道別禮物。
學習路線建議
1,JavaSE(建議三個月):
畢向東任意版(啟蒙或輔助)
小白人生導師,強烈推薦,兩遍
劉意JavaSE(深入淺出精華版,主看這個)
2014年年底錄制,和后面Javaweb比較配,兩遍
畢向東JavaSE25天版由于有點老了,整個解說都沒用eclipse,不利于小白掌握eclipse使用。但內(nèi)容真心不錯很照顧初學者。我自己初學Java看的是25天版本,后來又看了劉意老師的。畢老師的30天版里的多線程比25天版本講得好,也講了前端知識。
JavaSE小結:
主看劉意。
畢向東視頻作為補充,重點看他的面向對象,集合,IO,30天版多線程很不錯。
學完JavaSE先看下面的視頻,會讓你對前面所學和后面將學的內(nèi)容有個整體認識,畢竟你可能從學JavaSE的第一天起就反復問自己:這特么學了有啥用?
鏈接:https://pan.baidu.com/s/1cWdOEa密碼:rdlq
2,JavaWeb(建議兩個月):
崔希凡——超全面的JavaWeb視頻
和劉意的JavaSE銜接比較好,同樣深入淺出。day14和day24~26的項目,day17~19的JDBC以及最后兩天的基礎提高非常棒,強烈推薦,兩遍。
唯一的遺憾是這套視頻沒有jQuery和bootstrap 等前端內(nèi)容,需要自己另外找。jQuery可以去菜鳥教程或者w3cschool學一下就好了?;蛘呖淳蜆I(yè)班的。農(nóng)歷新年我會更新進階版的學習路線,里面會補充。
推薦網(wǎng)絡博文:JavaWeb學習總結 - 標簽 - 孤傲蒼狼 - 博客園
孤傲蒼狼的博文,大概是根據(jù)傳智方立勛或者其他老師的視頻再加上自己的理解寫成的。還是非常不錯的。我推薦大家學習崔老師的視頻時,多關注崔老師的word筆記、孤傲蒼狼的博文,也可以看看我的思維導圖。一定要多看,集思廣益。
3,ssh框架(按順序,建議20天,快速過一遍):
了解思想就好,重點掌握Spring。Struts2和Hibernate基本不用了。
崔希凡Struts2 + 劉悅東ssh框架 + 王澤2016ssh框架 + 王澤ssh綜合項目實戰(zhàn)
①崔希凡Struts2(銜接JavaWeb,作為過渡)
②劉悅東ssh框架(Struts2講得不錯)+ 梁桐spring(可跳過)
③王澤2016ssh框架(言簡意賅,思路清晰) + ssh綜合項目實戰(zhàn)(最后Dao抽取不錯)
崔老師的Struts2畢竟是2013年的,有點老了,會比較瑣碎。最重要的是,現(xiàn)在Struts2都不怎用了,作為了解的話,主要看值棧和攔截器,了解思想。
這部分視頻主要是為了給JavaWeb看崔老師視頻的朋友一個過渡。怕你們舍不得崔老師。其實其他老師框架也講得非常好。比如劉悅東,廣陵散等。
看完崔Struts2,就看劉悅東的框架,hibernate重點了解思想,Struts2幾個視頻中他講得最好最深。
最后,有了上面的鋪墊,再看王澤的ssh2016,條理非常清晰,精煉,沒有一句廢話。每天只有2.5小時。過一遍很快。
為什么三個框架要看這么多視頻?因為零基礎初學者要進入框架學習其實需要適應時間。就好比廣陵散(王澤)的,我一開始就是看他的,當時就想:什么東西?上來就講一大堆配置?學習任何東西我都希望能知其然知其所以然,比較討厭死記硬背。所以我列的視頻順序,是為了照顧初學者心理。如果你覺得能接受一上來就講配置,那么SSH其實只要看Spring。然后就直接看Mybatis和SpringMvc。畢竟現(xiàn)在公司已經(jīng)淘汰Struts2和Hibernate。
學習任何框架一定要知道,在沒有它之前,前人是怎么做的,那樣做存在哪些弊端,而框架又是怎么解決的。這樣學才能形自己的理解。劉悅東和崔希凡算是課程上得比較有意思的。讓他們帶你們?nèi)腴T,心里好接受些。
但框架東西畢竟太多,最終還是要王澤這樣精煉簡潔的講解給你們梳理一遍。
最后跟著王澤的ssh項目做一遍,ssh框架也就算入門了。struts2和hibernate理解思想即可,因為不用了??!但也不要走過場。你不了解Struts2和Hibernate,你就不知道學習SpringMVC和MyBatis有什么好處,各自的優(yōu)缺點是什么,因為沒有對比?。?/p>
我的建議是,Struts2和Hibernate做做筆記,了解思想。不用去敲代碼。把你的大腦空出來給后面的springmvc和mybatis。都學的話,會混!!
3.5,崔希凡JavaWeb(day17~19,day27~28)
Javaweb階段你可能覺得上面這幾天內(nèi)容不明覺厲,但又不知道具體有何用處。等你學完SSH就會發(fā)現(xiàn)這部分內(nèi)容是真的很吊。看崔老師的JDBC能一窺框架的事務原理,基礎加強講到了如何利用注解+反射搭建山寨版的hibernate和spring。
4,SSM框架(重點中的重點)
①李旭講的mybatis和springmvc
②黑馬的《springmvc、Mybatis由淺入深教程》
③在掌握了上面的視頻內(nèi)容并有自己的一些見解后再去看尚硅谷的Mybatis,有稍微講一下源碼。
之所以先看李旭的springmvc和mybatis,原因無他,就因為他只講重點,講得快。總共十小時,講完兩套框架。如果你領悟力夠強,理論上就成了。但絕大部分人都不可能看這么一套視頻就會用sm框架。所以在看李旭的視頻時,要隨時記錄自己的疑問,然后看燕青的視頻時,帶著疑問去學習。mybatis主要關注輸入映射+sql配置+輸出映射,了解mybatis如何解決jdbc的不足。springmvc沒什么建議...自己看著辦。
5,學習方法:
小白自學的難點在于:
1,找不到合適的資料。2,不知道學習重點。
我的學習路線,是個人認為最適合小白的。
至于學習方法,即使我這篇文章給出了重點,可能你們還是不會相信。所以我建議:不要想著徹底掌握一塊知識點再去學下一塊知識點,這樣永遠不可能把這一套視頻學好。
你應該在理解的前提下用最快的時間完整過一遍,對整體學習路線有個把握。第一次學習爭取每個知識點懂個50-60%,專門搞個txt文檔記錄觀看過程中的疑問點,從后面的內(nèi)容判斷前面哪些知識點是重要的,常用的。然后回過頭來有重點地攻克,抓大放小。
最后,我推薦的視頻都是自己用過的,對比挑出來的。盡量追求深入淺出,通俗易懂。如果你覺得沒看懂,就多看幾遍!!“多看幾遍”是最簡單樸素道理,很奏效。但是很少有人相信。其他的跟著視頻就好。前期用記事本工具,我用的是notepad++,你也可以用EditPlus。后期用MyEclipse,其實就是多了插件的eclipse。要盡快熟悉MyEclipse的各種快捷鍵。
已經(jīng)找到工作,對比周圍培訓班出來的朋友,我覺得自己自學出來水平還湊合(和科班當然沒法比)。視頻講得很好,但我自己也蠻努力的。因為我也是跌跌撞撞過來的,很清楚零基礎的困境。在剛開始搜集信息階段,我非常痛恨那些根本不知道零基礎是什么情況卻瞎幾把抖機靈的大V,回答的都是什么玩意兒…人家問學編程要怎么開始,你說先買臺電腦?然后幾百個贊…
最后勸各位一句不要轉行,你已經(jīng)錯過了黃金時間。而且程序員生命周期真的短,百分之80的人我估計30歲就又要轉行了。每年那么多優(yōu)秀畢業(yè)生,20來歲精力旺盛,你拿什么跟他們比?所以能不進這行就別進,工作太雞巴難找了。到時花了幾萬塊培訓費,大半年投入后出來找不到工作你可能會傻…精神會崩潰的。
每次看到什么“我今年32歲,月薪1w,想轉行做程序員”我都想罵醒他…
不要那么天真啊,真的。轉行很難找到工作的,年齡也是問題!不要被知乎洗腦,覺得只有IT行業(yè)人傻錢多日子爽好嗎!種一棵樹最好是十年前,其次是現(xiàn)在。這句話是說樹啊!樹!你們懂嗎。你是人,再過不到五年,你要結婚,養(yǎng)家的!轉行窮三年不是開玩笑的。
寫這篇文章純粹就是覺得入行坑多,自己一路走來覺得太不容易了。能拉一個是一個。
打開UC瀏覽器? 查看更多精彩圖片

打開UC瀏覽器 ?查看更多精彩圖片
打開UC瀏覽器? 查看更多精彩圖片

打開UC瀏覽器 ?查看更多精彩圖片
打開UC瀏覽器? 查看更多精彩圖片

打開UC瀏覽器 ?查看更多精彩圖片
如果預算充足,還是去天眼或者黑馬培訓吧,作為自學過來的人,知道真的很難。并不是托,而是從我自學的體會來講,這兩家機構的教學視頻是最棒的。
最后真誠地再次強調(diào),鼓勵學習編程,但不鼓勵不顧一切裸辭轉行。工作真的很難找。
95前(大于23歲)的朋友,不推薦入行,好好在本行業(yè)熬下去。所以就不要再問我是否合適入行之類的。本身是計算機或者軟件工程的朋友,不論你是??七€是本科,拜托努力一點?,F(xiàn)在計算機是風口,錢都送到家門口了,你卻在學習吊兒郎當玩游戲,然后畢業(yè)去做網(wǎng)管?
祝大家好運。