目錄
前言
學習路線的規劃
1.了解Java的環境
2.掌握JAVA的語法
3.掌握多執行緒編程
4.在作業中體驗設計模式
5.惡補資料結構
6.對演算法設計的了解
7.如何進階,
8.如何成為架構師
喜歡小編的分享可以點贊關注哦,小編持續為你分享最新文章 和 福利領取哦
前言
如果你是在校學生,務必要在學好得基礎(比如計算機系統,演算法)的前提下,再考慮去進行下面的學習,當我在網上看了那么多評論,我想說,你們不要誤人子弟,不要讓一個滿懷熱情的學生去直接學習什么原始碼,架構之類知識,讓別人失望而歸,可以看看我的分享,為了增加自己的說服力,本人分享一份來自自己的學習經歷,
清華大學碩士畢業,在北京寫過兩年Java,在杭州寫過三年Python,深入定制過Python虛擬機,現在從事arm上的javascript虛機機的開發,雖然仍然不是什么牛人,但我覺得我的經驗能對大多數新入門的從業人員提供參考,
如果你是有Java基礎的,那你應該去找一個Java的基礎教程鞏固自己的Java基礎,在鞏固基礎的同時多實踐,多敲代碼,很多時候你覺得你寫完了,運行出來的結果和自己的想法應該一模一樣,但是有時候你發現結果和你的想法截然不同的時候,并且去思考的時候,這個時候你才算剛剛入門了,起碼你現在對自己的代碼有思考了,每當學完一天的內容后自己要有總結,不要急于進入下部分,留下幾天好好寫一些基礎的程式,鞏固自己印象,
以下是個人分享
這三門當中,首推Java,真的,Python當然是好,但是對于一個新入門的人,最重要的是先找到作業不是嗎?而找作業的話,Java無疑是最容易的,對于跨行業的人而言,最困難的其實是第一步,那就是如何進入這個行業,如果你連進都進不來,第一份作業遲遲無法開始,那么好好努力,補上資料結構,設計模式,演算法設計這些差距就根本無從說起,不是嗎?不要被什么科班出身之類的說法嚇壞了,雖然我是科班出身,但我始終覺得,只要你肯努力,這里面并沒有什么無法逾越的鴻溝,最重要的是不要好高騖遠,也不要急于求成,學習和積累是有一個程序的,在程式員這個行當,你一分付出,就會有一分回報,尊重學習的內在規律,循序漸進,終有一天,你會成為你想成為的那個人的,

學習路線的規劃
1.了解Java的環境
了解Java的運行環境,搞清楚path和classpath是干什么的,怎么在命令列進行編譯,執行,知道IDE的各個按鈕后面真正發生了什么事情,
2.掌握JAVA的語法
掌握Java的語法,搞清楚包,介面,類,繼承這些基本概念,掌握多型,overwrite,死背下IO的介面,包括InputStream/OutputStream和Writer/Reader,死背下網路編程和GUI編程的介面,死背JDBC介面,這一步,推薦的書是《Thinking in Java》,
3.掌握多執行緒編程
掌握多執行緒編程,弄明白ConcurrencyHashMap是怎么實作的,搞清楚synchronized是怎么回事,弄明白為什么要有Runnable介面,在第二步和第三步掌握到80%的時候,你就可以考慮找作業了,
4.在作業中體驗設計模式
在作業中體會一下設計模式,推薦《Java與模式》這本書,看完里面的Decorator,IO介面你再也不會去死記硬背了,用的時候,根據Adaptor和Decorator的命名規則,自己臨時推都推得出來,
5.惡補資料結構
惡補資料結構,搞清楚LinkedList和ArrayList的實作機制,了解它們的每一個介面的時間復雜度,同樣的還有其他容器,Map啊,Setl啊,都是一樣的,堆疊,佇列,二叉樹,圖貫穿編程始終,如果這一步你邁不過去,那就只能在低階程式員里打轉,
6.對演算法設計的了解
如果有可能,最好對一些演算法設計也有所涉獵,比如動態規則的思路,貪心演算法,諸如KMP這種奇妙的演算法等,這一步沒有資料結構那么重要,學得好當然好,學不好也不用太挫敗,到了這一步,你和科班程式員之間的差距就不大了,可以在作業中獨立承擔開發任務了,

7.如何進階,
進階,這時候就可以有自己的思考了,Java發展到現在,被用在各種各樣的情景之中,說它是應用最廣泛的編程語言并不過分,你在打好基礎以后,就可以考慮應該向哪個方向發展了,比如服務端的架構,最好能學習一下JavaEE,JEE一直以來,都是讓人覺得門檻太高,這個其實可以從Spring入手,搞清楚反射,控制反轉,依賴注射都是什么鬼(這些神叨叨的名詞其實都是為了解決Java本身不夠動態這個缺陷而出現的,這里不展開,我只想提醒的是,這些概念沒有什么大不了的東西,不要被愛裝逼的家伙嚇住了),還有訊息這個東西,還有ORM這個東西,都去搞搞清楚,想一下它們要解決什么問題,再猜一下他們是怎么實作的,我面試的時候發現,其實大多數優秀的開發者,即使以前沒思考過這個問題,讓他現場設計一下Hibernate,都能設計得差不多,這說明,這些框架性的東沒有什么大不了的,有了基礎,你也能設計出來,關鍵是要去動腦筋想,以上是以服務端開發舉例,那么對于客戶端,你就去思考事件回應機制是如何作業的(這個我不熟悉,就不再多說了),還可以深入研究一下JVM的源代碼,以及其實作機制,了解一下垃圾回收演算法等等,到了這一步,你就可以應聘Java高級開發了,如果運氣好,年薪30萬是有可能的,保底也要20萬了,
8.如何成為架構師
架構,到了這一步,你就算是登堂入室,真正邁入高級開發人員了,這一步,你要思考更多的東西,比如,如何處理高并發,如何應對分布式系統,如何提供更健壯的資料服務,到了這一步,那就沒有什么可以參考的,現成的東西了,全靠自己的悟性了,那最后能達到什么高度,就不是我這個層次能點評的了,

希望你能成為一個成功的程式員,祝好,
來自小編的福利
以上是小編分享的一些技術學習經驗,當然小編也準備了詳細的架構師學習路線圖 點我 免費領取 ,在這里小編免費分享一份Java核心知識點整理的資料檔案,點我 免費領取,編程的世界永遠向所有熱愛編程的人開放,這是一個自由,平等,共享的世界,我始終是這樣堅信的,
喜歡小編的分享可以點贊關注哦,小編持續為你分享最新文章 和 福利領取哦
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/205141.html
標籤:其他
下一篇:剛剛好,才是最理想的狀態



