講道理,只要你是一個愛折騰的程式設計師,畢業找工作真的不需要再花錢培訓!

小傅哥發表於2020-05-14

作者:小傅哥
部落格:https://bugstack.cn

沉澱、分享、成長,讓自己和他人都能有所收穫!

一、前言

標題想吸引你進來參考下我的學習方式,或許能給你帶來一些經驗。當然不乏一些培訓中也有超級優秀的開發人員。

講道理,程式設計師上學這段時光相對每個人都是公平的。同樣是拿到了一本 譚浩強 的《Java 2 實用教程》,也同樣有一臺膝上型電腦,和一個宿舍一張床。

那些年的男生宿舍

說說我自己,剛上大一程式設計方面的課程是C語言,先不說能不能執行出來 HelloWorld ,就連安裝個 VC++ 6.0 ,都折騰好幾天。可能也是神奇,因為萌新小白學習東西能遇到各種各樣的問題。 最後安裝好了軟體的電腦真的不敢亂弄,怕它壞。C語言 學了一個學期後開始了 Java 課程,大家都說 Java 簡單,巴拉巴拉 有很多函式、開發工具好用、記憶體自己回收等等。但確實,工具還是蠻好安裝的,除了配置環境變數要去網上抄一下,還是可以寫出一個 Hi Java 的。從此便開始了 Java 學習的旅途。

從你摸起電腦的那一刻,每個人學習程式設計都會遇到很多問題,包括;

  1. 完全不知道是啥,不知道從哪開始,老師講過也不會。
  2. 多次碰壁執行不出結果,帶不來成就感。沒有遊戲和隔壁系的妹子好。
  3. 學完就忘,背了也記不住,覺得自己也沒有專案,不能鍛鍊。
  4. 能交流的人少,身邊也是打遊戲的多,大學校園花花綠綠,有錢沒錢,我也想玩玩。

除了這些問題,可能比這些多的還有很多問題。我也同樣遇到過,初學時我也去加一些QQ群,但是很多都是比較水,能討論技術的不多。也看過一些技術論壇,確實還是有引導性的幫助的。也跟一些師哥師姐交流,大學學哪些知識才能找到工作。好在,慢慢摸索出一條學習路線。同時為了可以與同好共同學習,就自己建了技術QQ群(東軟帝國),認識了一群好友,在我大學期間時常給我解決bug;大帝糖糖蘇二毛螞蟻ZERO小凱Ticmy大寶萌貨等眾多好友。他們現在也分佈在BAT等一線網際網路的中,也有做到總監級別的大佬。

給自己打打氣,有時候真的需要給自己點激勵,畢竟這條路走起來不是那麼容易。我的方式是上學期間時常會寫一些自己認為算是詩句的詩,來提升自己的鬥志。

紅塵世界幾個王,我自不服迎頭上。
日敲程式碼兩百行,衝進世界五百強。

如果你在網上搜這幾句話,還是可以搜的到的!

學習程式設計的過程很大一個問題是寫的少,總有一部分人覺得只要看了視訊,背了程式碼,這東西就能會。但往往真的不是這樣,只要這東西不是你親手敲了幾十遍,你就永遠也記不住。因為這個過程是在鍛鍊你的邏輯思維和肌肉記憶,為啥說是肌肉記憶呢?就像你打字聊天,輸入一個拼音nihao,你會現在會想到它是從哪個手指敲出去的嗎?根本就不會了,肌肉記憶早已形成,你只需要把你要的內容想到就能立刻通過鍵盤呈現出來。同樣寫程式碼也是也有的,public static void main,如果這一句程式碼你要反覆看著鍵盤去敲,那麼就是你寫的程式碼量還是太少。

願努力拼搏的你都能承載一份美好!

二、初學程式設計用過的書

嗯!是用過的書,不是看過的書。

初學程式設計的人往往並不需要太多的書,因為一本書所涵蓋的知識基本已經很全面了,難的是要一字一句的把裡面的內容都搞定。如果只是看還是很容易的,但是要想按照裡面說的都實現執行出結果,那對收穫來說就不不一樣了。當然,如果你已經深入的學習了,領悟性有很好。可以在繼續擴充套件其他書籍的學習,包括一些深入的原理、原始碼的分析、技能的擴充等等。

1. 譚浩強的這本書看了好久

譚浩強《Java 2 實用教程》

一遍遍翻,一遍遍看,一遍遍執行裡面的程式碼。這本書真的給我帶來很大的幫助,時至今日它也一直在我的身邊。

2. SSH 幾百頁的書翻爛了

學習完基礎程式設計後,就需要去擴充Spring相關技能,去開發真正的專案。類似這樣的書還是比較多的,書中也包括了一些專案可以跟著學習。

3. 除了書還有視訊可以看

似乎每個程式設計師都看過 馬士兵 的視訊,主要是他的聲音和講課方式很吸引人,不沉悶又能學的乾貨。至少他的視訊我是看了5-6遍,也跟著寫了5-6遍。

三、同樣的專案做了N遍

在學習程式設計的過程中,我搞過很多的專案,當然這些專案的需求很多都是我臆想出來的。通過我需要鍛鍊什麼樣的知識點,之後去想著大概一個什麼樣的專案可以涵蓋的去練習。

但!學到 Socket 後,大家應該都做過區域網聊天,而我比較能折騰做了N次。直到最後這次不僅自己得到鍛鍊,還可以幫助被人成長。

1. 上學期間第一個仿QQ聊天

登入

仿QQ聊天,登入

好友

仿QQ聊天,好友

聊天

仿QQ聊天,聊天

  • 這個期間是學校聘請了外部的老師來教我們做專案,為了儘可能做的好一點,當時就研究著仿照QQ做一款通訊。現在看還是比較醜的,但是當時也是比較牛的了。

2. 培訓期間區域網聊天

登入

區域網通訊,登入

聊天

區域網通訊,聊天

控制檯

區域網通訊,控制檯

  • 清楚的記得這是當時搞了一週寫完的,畢竟還是比較熟練了。
  • 甚至我在考慮把好友與聊天視窗合併,貌似現在大部分聊天軟體也都是這麼幹的了!嗯!優秀!

3. 學Netty5.0寫區域網聊天

登入

Netty5.0通訊,登入

聊天

Netty5.0通訊,聊天

4. 學WebSocket仿微信聊天

聊天

WebSocket通訊,聊天

  • 15開始學習 netty5.0,但是後來由於5.0版本問題,netty官網下掉5.0。於是去年19年,我又開始編寫 nett4.0 案例。為此也寫了一次 WebSocket 通訊。
  • 原始碼:https://github.com/fuzhengwei/itstack-demo-netty

5. 出專欄仿桌面版微信

登入

Netty仿桌面版微信,登入

聊天

Netty仿桌面版微信,聊天

好友

Netty仿桌面版微信,好友

  • 這個專案是20年過年期間發起的,使用JavaFx、Netty4.x、SpringBoot、Mysql等技術棧和偏向於DDD領域驅動設計方式,搭建的仿桌面版微信聊天工程實現通訊核心功能。
  • 原始碼:https://github.com/fuzhengwei/NaiveChat

6. 除了這些還搞過很多

只要是能學習程式設計的內容,我似乎一直在折騰。誰學習期間也沒有一個專案,但是可以自己去想出來一個專案,之後通過這樣的專案鍛鍊自己的知識,儘可能讓學到的內容得以實踐。下面在列舉一些;

1. 分數計算機

計算器

2. 學生成績管理系統

成績系統

3. 考試題庫系統

考試題庫系統

4. 圖書館系統

圖書館系統

5. 彩禮管理系統

彩禮管理系統

6. 線上考試系統

線上考試系統

好在當年留了一些圖片

雖然這些系統在現在看有點點醜,甚至算不上專案,但對於編碼從初識到了解的一個學習過程是需要的。總歸,是要做一些實際的目標性內容,引導自己不斷地強化知識。把一些未知的知識儘可能通過問題訴求學習到。

四、沉澱、分享,交個朋友

從19年開始,我想著生活裡要新增一點自己能長期堅持的事情,不要把時間都浪費掉。於是,選擇了我最擅長的方向,做原創技術輸出。這樣既能讓自己有所沉澱,也能把知識傳播給他人帶來成長。

  • 2019年7月,搭建個人部落格;https://bugstack.cn - 沉澱、分享、成長,讓自己和他人都能有所收穫

  • 2019年8月,找回公眾號bugstack蟲洞棧,定期推送個人原創技術文章

  • 2019年9月,CSDN 申請部落格專家通過

  • 2019年10月,微信公眾號終於又了1k的讀者

  • 2019年11月,完成三個專欄內容編寫;《用Java實現JVM》《Netty4.x專欄學習》《基於JavaAgent全鏈路監控》《DDD領域驅動設計實踐》

  • 2019年12月,開發微信公眾號與部落格打通引流粉絲

  • 2020年,還在進行中!釋出了GitChat專欄深入編寫了位元組碼程式設計持續做原創技術輸出加強個人技術棧學習吸納架構設計精髓等等。

  • 整理了一整套CodeGuide 程式設計師編碼指南 - https://github.com/fuzhengwei/CodeGuide/wiki

    本程式碼庫是作者小傅哥多年從事一線網際網路 Java 開發的學習歷程技術彙總,旨在為大家提供一個清晰詳細的學習教程,側重點更傾向編寫Java核心內容。如果本倉庫能為您提供幫助,請給予支援(關注、點贊、分享)!


做這些事情,更多是我的愛好愛折騰的性格在支撐我。也希望將我的程式設計學習經驗和技術沉澱多多分享。

其實大家可支配的時間都差不多,只不過開始寫技術文章後,不吃雞、不王者、不去電影、夜裡0點前不睡覺也有2點的時候、週末放假不出去浪(今年也出不去)。那麼你還是可以做一些有意義的事。當然,如果你說這樣不是生活,但每個人愛好不同。

收入,寫文章是會有收入的,公眾號裡日常4毛,也有1塊多的時候,但幾分也有。好在,我現在也不在乎這個,主要是要做一件可以堅持的有意義的事。

如果說能給你一些意見,我也建議你可以折騰折騰,程式設計師的世界裡折騰一下還是可以全方位的學到很多東西的。做的久了會提升全棧的研發技能(後端、前端、部署、運維等等),而且還會獲得;業務、運營、產品定位等等方面的提升。

五、收個尾

  • 以上呢,是我學習和不斷折騰的一個方式。算不上優秀,但至少這樣的學習可以保證你畢業時候找一份不錯的工作,也能為你將來做好後路的根基。雖然每個人都有自己的路,但如果到了年紀還是要多把時間放到有價值的事上。
  • 持續學習的過程遇到了很多夥伴,各有優秀。雖然他們不會把錢給我們們?,但是這些夥伴的寶貴經驗都是會無償告訴你的。包括你學的技術遇到問題包括你寫文章需要看哪些書籍包括你對各個領域的認知等等。
  • 做人,做事,我喜歡親和友善,廣結同好。自從寫公眾號文章,有很多小夥伴加了我的微信,也和很多人成為了好朋友,他們日常幫我點贊、分享文章,深深感謝!

相關文章