學Java,找對圈子,跟對人

我大學學的是機械專業,到大四才決定要學Java,以後當一名程序員。

到現在,十幾年過去了,我現在已經是一家上市公司的技術總監了,管理的技術團隊有100多人。很慶幸當初了選擇了學Java。

還記得當初學java的時候,一臉懵逼:

  • Java 家族成員太多,學個 Java 怎麼要學這麼多東西?
  • 那麼多書,從哪本開始看起?
  • 怎麼學個java,還得學tomcat、mysql?

這篇文章說說我學 Java 中,對我幫助最大的三段經歷

1. 遇到了好基友

說說我認識的兩個同行。這兩個程序員和我年齡相仿,都姓劉,爲了省事,後面統稱二劉吧。對我來說,如果用一個詞來形容他倆,就是:良師益友。

認識二劉之前,我覺得自己水平還可以:會寫 CRUD、JSP,會用 Struts,會扯幾個設計模式。現在看來,頂多就是動手能力還湊合,腦子裏的知識不成體系。

從認識二劉的第一天起,就被全面碾壓。學校、專業的碾壓就不用說了,關鍵是從他們嘴中我聽了很多之前都沒聽過的名詞:敏捷開發、重構、結對編程、領域模型……

說實話,當初剛接觸這些的時候,我是很排斥的。舉幾個例子:

  • 看到二劉結對編程,心想一個人幹活、一個人閒着,這不是偷懶嗎?
  • 重構代碼:程序跑的好好的,我爲啥要改我的代碼?有重複代碼怎麼了?有重構的時間,還不如再實現倆新功能。
  • 單元測試:代碼還寫不過來,哪有時間寫單元測試,再說了,不是有專門的測試嗎。
  • 領域模型:別和我說什麼貧血不貧血,我的 JavaBean 裏就只有 getter、setter。

好在二劉足夠有耐心,對我不拋棄不放棄,帶着我一起學習、動手。

學 Java 很辛苦,大部分人自制力差,一個人學容易偷懶。找幾個好基友一起學,確實提高快。在這裏要感謝一下當初二劉對我的幫助。

到現在我和二劉還是好朋友,跟他們一起學到的重構、DDD、TDD、架構模式這些思想,讓我受益至今。

2. 找到了組織

這個組織就是BJUG——Beijing Java User Group。從名字就能看出來,是一羣在北京工作的 Java 程序員聚在一起的一個小團體。

BJUG 是一個非常活躍的技術社區,我們都有哪些活動呢?

最主要的活動是線下技術分享,分享基本都在週六下午,一下午能分享 2-4 個主題。

現在還能百度到當時的信息,給大家貼幾張圖。


從這幾張圖上,大家能看出了,我們當時分享的都是技術乾貨。在冰雲的熱心組織下,社區弄得還可以,成爲 Top 50 的 Java User Group。

除了技術分享,我們還一起翻譯資料、書籍。當然還少不了一起聚餐腐敗。

當時在 BJUG 裏我好像沒做過主題分享,因爲不自信,都是充當聽衆,這也算一個遺憾吧。

總之,經歷了二劉和 BJUG 的洗禮之後,後面幾年我找工作面試的時候,不吹nb,技術面基本都是平趟。

3. 擼幾萬行代碼

學Java之前,我的的計算機水平:QQ 熟練、紅警精通。

最開始我學習靠看書,看《Java 編程思想》,也不知道是書太難了,還是翻譯的太晦澀了,看書真看不懂啊,書又厚,我看了幾個月愣是一遍都沒看完,經常是看了後面忘了前面。

後來我乾脆就把書扔一邊去了,學完最基本的語法之後直接擼代碼!

起初是擼簡單的,擼各種常用類、常用方法的例子,這樣方便以後拿起來就用。另外,擼的多了,慢慢攢出了自己的一套工具類,包括String、數組、日期、類型轉換等等這些的,在三方工具類沒有普及之前,這套工具類陪了我很多年。估計很多老程序員,都有一套自己積累的工具類。

後來是擼項目代碼,當時找的是著名的 PetStore 項目,雖然是個示例項目,項目很小,但是麻雀雖小五臟俱全。最開始是看一行寫一行,照着抄代碼。抄了 n 遍之後,感覺都會了,然後自己默寫,磕磕絆絆默寫出來之後,根本跑不起來,一堆 bug。解決完 bug,能跑起來了,下一步就是把自己寫的代碼和原始代碼作比較,看看差異在哪,琢磨人家爲什麼要那麼寫。

擼了一定數量代碼之後,我再回過頭去看書,可能以前看不懂的,突然就明白了。

擼代碼對我度過小白階段來說,非常非常重要。

我感覺學編程,就和學鋼琴、游泳差不多,光看書不動手是真不行。

以上寫了很多個人經歷,我覺得只有親自經歷的,自己驗證有效的,纔好意思推薦給你們。

另外,再給大家分享一個學習技巧,就是看大廠的開發規範。

例如阿里的《Java 開發手冊》,是阿里程序員們的集體智慧結晶和經驗總結。新人看完可以少踩很多坑,而且可以從早期就能養成很多好的編程習慣。

就寫這麼多吧,看完覺得有幫助,希望你能點個贊,也算是對我碼字的支持。當然了,即使不點贊,也要感謝你的閱讀。


你好,我是四猿外。

一家上市公司的技術總監,管理的技術團隊一百餘人。

我從一名非計算機專業的畢業生,轉行到程序員,一路打拼,一路成長。

我會把自己的成長故事寫成文章,把枯燥的技術文章寫成故事。

歡迎關注我的公衆號。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章