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

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

![](https://img-blog.csdnimg.cn/2020043022510635.jpg) 作者:小傅哥 部落格:[https://bugstack.cn](https://bugstack.cn) >沉澱、分享、成長,讓自己和他人都能有所收穫! ## 一、前言 **標題***想吸引你進來參考下我的學習方式,或許能給你帶來一些經驗。當然不乏一些培訓中也有超級優秀的開發人員。* `講道理`,程式設計師上學這段時光相對每個人都是公平的。同樣是拿到了一本 `譚浩強` 的《Java 2 實用教程》,也同樣有一臺膝上型電腦,和一個宿舍一張床。 ![那些年的男生宿舍](https://bugstack.cn/assets/images/2020/itstack-code-life-04-01.jpg) **說說我自己**,剛上大一程式設計方面的課程是`C語言`,先不說能不能執行出來 `HelloWorld` ,就連安裝個 `VC++ 6.0` ,都折騰好幾天。*可能也是神奇,因為萌新小白學習東西能遇到各種各樣的問題。* 最後安裝好了軟體的電腦真的不敢亂弄,怕它壞。`C語言` 學了一個學期後開始了 `Java` 課程,大家都說 `Java` 簡單,巴拉巴拉 有很多函式、開發工具好用、記憶體自己回收等等。但確實,工具還是蠻好安裝的,除了配置環境變數要去網上抄一下,還是可以寫出一個 `Hi Java` 的。從此便開始了 `Java` 學習的旅途。 **從你**摸起電腦的那一刻,每個人學習程式設計都會遇到很多問題,包括; 1. 完全不知道是啥,不知道從哪開始,老師講過也不會。 2. 多次碰壁執行不出結果,帶不來成就感。沒有遊戲和隔壁系的妹子好。 3. 學完就忘,背了也記不住,覺得自己也沒有專案,不能鍛鍊。 4. 能交流的人少,身邊也是打遊戲的多,大學校園花花綠綠,有錢沒錢,我也想玩玩。 `除了這些問題`,可能比這些多的還有很多問題。我也同樣遇到過,初學時我也去加一些QQ群,但是很多都是比較水,能討論技術的不多。也看過一些技術論壇,確實還是有引導性的幫助的。也跟一些師哥師姐交流,大學學哪些知識才能找到工作。好在,慢慢摸索出一條學習路線。同時為了可以與`同好`共同學習,就自己建了技術QQ群(`東軟帝國`),認識了一群好友,在我大學期間時常給我解決bug;`大帝`、`糖糖`、`蘇二毛`、`螞蟻`、`ZERO`、`小凱`、`Ticmy`、`大寶`、`萌貨`等眾多好友。他們現在也分佈在BAT等一線網際網路的中,也有做到總監級別的大佬。 **給自己打打氣**,有時候真的需要給自己點激勵,畢竟這條路走起來不是那麼容易。我的方式是上學期間時常會寫一些自己認為算是詩句的詩,來提升自己的鬥志。 ```java 紅塵世界幾個王,我自不服迎頭上。 日敲程式碼兩百行,衝進世界五百強。 ``` *如果你在網上搜這幾句話,還是可以搜的到的!* 學習程式設計的過程很大一個問題是寫的少,總有一部分人覺得只要看了視訊,背了程式碼,這東西就能會。但往往真的不是這樣,只要這東西不是你親手敲了幾十遍,你就永遠也記不住。因為這個過程是在鍛鍊你的邏輯思維和肌肉記憶,為啥說是肌肉記憶呢?就像你打字聊天,輸入一個拼音`nihao`,你會現在會想到它是從哪個手指敲出去的嗎?根本就不會了,肌肉記憶早已形成,你只需要把你要的內容想到就能立刻通過鍵盤呈現出來。同樣寫程式碼也是也有的,`public static void main`,如果這一句程式碼你要反覆看著鍵盤去敲,那麼就是你寫的程式碼量還是太少。 願努力拼搏的你都能承載一份美好! ## 二、初學程式設計用過的書 嗯!是*用過*的書,不是*看過*的書。 初學程式設計的人往往並不需要太多的書,因為一本書所涵蓋的知識基本已經很全面了,難的是要一字一句的把裡面的內容都搞定。如果只是看還是很容易的,但是要想按照裡面說的都實現執行出結果,那對收穫來說就不不一樣了。當然,如果你已經深入的學習了,領悟性有很好。可以在繼續擴充套件其他書籍的學習,包括一些深入的原理、原始碼的分析、技能的拓展等等。 ### 1. 譚浩強的這本書看了好久 ![譚浩強《Java 2 實用教程》](https://bugstack.cn/assets/images/2020/itstack-code-life-04-02.png) 一遍遍翻,一遍遍看,一遍遍執行裡面的程式碼。這本書真的給我帶來很大的幫助,時至今日它也一直在我的身邊。 ### 2. SSH 幾百頁的書翻爛了 ![](https://bugstack.cn/assets/images/2020/itstack-code-life-04-03.png) 學習完基礎程式設計後,就需要去拓展Spring相關技能,去開發真正的專案。類似這樣的書還是比較多的,書中也包括了一些專案可以跟著學習。 ### 3. 除了書還有視訊可以看 似乎每個程式設計師都看過 `馬士兵` 的視訊,主要是他的聲音和講課方式很吸引人,不沉悶又能學的乾貨。至少他的視訊我是看了5-6遍,也跟著寫了5-6遍。 ## 三、同樣的專案做了N遍 在學習程式設計的過程中,我搞過很多的專案,當然這些專案的需求很多都是我臆想出來的。通過我需要鍛鍊什麼樣的知識點,之後去想著大概一個什麼樣的專案可以涵蓋的去練習。 但!學到 `Socket` 後,大家應該都做過區域網聊天,而我比較能折騰做了N次。直到最後這次不僅自己得到鍛鍊,還可以幫助被人成長。 ### 1. 上學期間第一個仿QQ聊天 **登入** ![仿QQ聊天,登入](https://bugstack.cn/assets/images/2020/itstack-code-life-04-04.jpg) **好友** ![仿QQ聊天,好友](https://bugstack.cn/assets/images/2020/itstack-code-life-04-05.jpg) **聊天** ![仿QQ聊天,聊天](https://bugstack.cn/assets/images/2020/itstack-code-life-04-06.jpg) - 這個期間是學校聘請了外部的老師來教我們做專案,為了儘可能做的好一點,當時就研究著仿照QQ做一款通訊。現在看還是比較醜的,但是當時也是比較牛的了。 ### 2. 培訓期間區域網聊天 **登入** ![區域網通訊,登入](https://bugstack.cn/assets/images/2020/itstack-code-life-04-07.jpg) **聊天** ![區域網通訊,聊天](https://bugstack.cn/assets/images/2020/itstack-code-life-04-08.jpg) **控制檯** ![區域網通訊,控制檯](https://bugstack.cn/assets/images/2020/itstack-code-life-04-09.jpg) - 清楚的記得這是當時搞了一週寫完的,畢竟還是比較熟練了。 - 甚至我在考慮把好友與聊天視窗合併,貌似現在大部分聊天軟體也都是這麼幹的了!嗯!優秀! ### 3. 學Netty5.0寫區域網聊天 **登入** ![Netty5.0通訊,登入](https://bugstack.cn/assets/images/2020/itstack-code-life-04-10.png) **聊天** ![Netty5.0通訊,聊天](https://bugstack.cn/assets/images/2020/itstack-code-life-04-11.png) - 這一階段開始開始學習了`netty5.0`,嘗試使用netty+protobuf,開發局域網聊天。目前網上也是能搜到這個工程。 - 原始碼還有一份;[https://github.com/fuzhengwei/itstack-demo-nettychat](https://github.com/fuzhengwei/itstack-demo-nettychat) ### 4. 學WebSocket仿微信聊天 **聊天** ![WebSocket通訊,聊天](https://bugstack.cn/assets/images/2020/itstack-code-life-04-12.png) - 15開始學習 `netty5.0`,但是後來由於`5.0`版本問題,netty官網下掉5.0。於是去年19年,我又開始編寫 `nett4.0 `案例。為此也寫了一次 `WebSocket` 通訊。 - 原始碼:[https://github.com/fuzhengwei/itstack-demo-netty](https://github.com/fuzhengwei/itstack-demo-netty) ### 5. 出專欄仿桌面版微信 **登入** ![Netty仿桌面版微信,登入](https://bugstack.cn/assets/images/2020/itstack-code-life-04-13.png) **聊天** ![Netty仿桌面版微信,聊天](https://bugstack.cn/assets/images/2020/itstack-code-life-04-14.png) **好友** ![Netty仿桌面版微信,好友](https://bugstack.cn/assets/images/2020/itstack-code-life-04-15.png) - 這個專案是20年過年期間發起的,使用JavaFx、Netty4.x、SpringBoot、Mysql等技術棧和偏向於DDD領域驅動設計方式,搭建的仿桌面版微信聊天工程實現通訊核心功能。 - 原始碼:[https://github.com/fuzhengwei/NaiveChat](https://github.com/fuzhengwei/NaiveChat) ### 6. 除了這些還搞過很多 只要是能學習程式設計的內容,我似乎一直在折騰。誰學習期間也沒有一個專案,但是可以自己去想出來一個專案,之後通過這樣的專案鍛鍊自己的知識,儘可能讓學到的內容得以實踐。下面在列舉一些; #### 1. 分數計算機 ![計算器](https://bugstack.cn/assets/images/2020/itstack-code-life-04-16-01.png) #### 2. 學生成績管理系統 ![成績系統](https://bugstack.cn/assets/images/2020/itstack-code-life-04-16-02.png) #### 3. 考試題庫系統 ![考試題庫系統](https://bugstack.cn/assets/images/2020/itstack-code-life-04-16-03.png) #### 4. 圖書館系統 ![圖書館系統](https://bugstack.cn/assets/images/2020/itstack-code-life-04-16-04.png) #### 5. 彩禮管理系統 ![彩禮管理系統](https://bugstack.cn/assets/images/2020/itstack-code-life-04-16-05.png) #### 6. 線上考試系統 ![線上考試系統](https://bugstack.cn/assets/images/2020/itstack-code-life-04-16-06.png) **好在當年留了一些圖片** 雖然這些系統在現在看有點點醜,甚至算不上專案,但對於編碼從初識到了解的一個學習過程是需要的。總歸,是要做一些實際的目標性內容,引導自己不斷地強化知識。把一些未知的知識儘可能通過問題訴求學習到。 ## 四、沉澱、分享,交個朋友 從19年開始,我想著生活裡要新增一點自己能長期堅持的事情,不要把時間都浪費掉。於是,選擇了我最擅長的方向,做原創技術輸出。這樣既能讓自己有所沉澱,也能把知識傳播給他人帶來成長。 - **2019年7月**,搭建個人部落格;[https://bugstack.cn](https://bugstack.cn/) - 沉澱、分享、成長,讓自己和他人都能有所收穫 - **2019年8月**,找回公眾號`bugstack蟲洞棧`,定期推送個人原創技術文章 - **2019年9月**,CSDN 申請部落格專家通過 - **2019年10月**,微信公眾號終於又了1k的讀者 - **2019年11月**,完成三個專欄內容編寫;`《用Java實現JVM》`、`《Netty4.x專欄學習》`、`《基於JavaAgent全鏈路監控》`、`《DDD領域驅動設計實踐》` - **2019年12月**,開發微信公眾號與部落格打通引流粉絲 - **2020年**,還在進行中!釋出了[`GitChat專欄`](http://chat.itstack.org) 、`深入編寫了位元組碼程式設計`、`持續做原創技術輸出`,`加強個人技術棧學習`,`吸納架構設計精髓`等等。 - **整理了一整套`CodeGuide 程式設計師編碼指南`** - [https://github.com/fuzhengwei/CodeGuide/wiki](https://github.com/fuzhengwei/CodeGuide/wiki) *本程式碼庫是作者小傅哥多年從事一線網際網路 Java 開發的學習歷程技術彙總,旨在為大家提供一個清晰詳細的學習教程,側重點更傾向編寫Java核心內容。如果本倉庫能為您提供幫助,請給予支援(關注、點贊、分享)!* --- 做這些事情,更多是我的`愛好`和`愛折騰的性格`在支撐我。也希望將我的程式設計學習經驗和技術沉澱多多分享。 其實大家可支配的時間都差不多,只不過開始寫技術文章後,不吃雞、不王者、不去電影、夜裡0點前不睡覺也有2點的時候、週末放假不出去浪(今年也出不去)。那麼你還是可以做一些有意義的事。當然,如果你說這樣不是生活,但每個人愛好不同。 **收入**,寫文章是會有收入的,公眾號裡日常4毛,也有1塊多的時候,但幾分也有。好在,我現在也不在乎這個,主要是要做一件可以堅持的有意義的事。 如果說能給你一些意見,我也建議你可以折騰折騰,程式設計師的世界裡折騰一下還是可以全方位的學到很多東西的。做的久了會提升全棧的研發技能(後端、前端、部署、運維等等),而且還會獲得;業務、運營、產品定位等等方面的提升。 ## 五、收個尾 - *以上呢*,是我學習和不斷折騰的一個方式。算不上優秀,但至少這樣的學習可以保證你畢業時候找一份不錯的工作,也能為你將來做好後路的根基。雖然每個人都有自己的路,但如果到了年紀還是要多把時間放到有價值的事上。 - 持續學習的過程遇到了很多夥伴,各有優秀。雖然他們不會把錢給咱們