正文之前
九月中旬了,大三開學兩個星期的這個週四晚上,突然覺得應該記錄一點什麼,本來是打算等明年如果找到實習再寫一下這兩年半的經歷的,但是實在無聊,就隨便寫一點自己的浪史吧
大學前
在選擇學校的那個夏天,到現在還記得,因為覺得學計算機相關專業還是挺有趣的,所以每個學校的第一個專業報的全是軟體工程,又是因為機緣巧合,別人退出而剩餘的 Head Count 被分給了我,來到了現在的學校
大一的迷茫(不知道自己學的能做什麼)
作為一個上大學前連程式語言是什麼都不知道的我,選擇了軟體工程,在沒開學之前就被新生群中的什麼會用幾種程式語言、會用框架的大佬給嚇壞了,後來發現也就那點水平,吹水倒是挺厲害
大一一整年和程式設計有關的課程就是 C 語言和 Java 了,整個人是一個很迷茫的狀態,因為整天就在寫黑框輸出的 demo,並且對整個軟體工程的專業也沒有清晰的認識,經常性的迷茫帶了很大的打擊,不知道自己所學的能夠做些什麼
不過事情發生了轉機,因為抱著要成為好學生的心態,天天就泡在圖書館,在一開始學習 C 語言的時候,看了譚浩強老師的《C語言程式設計》好幾遍,手動糾錯,雖然備受詬病的指標部分我也忘的差不多了,但是,整天呆在圖書館給我帶來的好處不是程式設計上的提升,而是學會一個人獨處,其實一個人獨處的學習狀態是一個很重要的基礎,就靠著這個,80% 的內容都是自學
大二的選擇(知道自己想做什麼)
2017.9 - 2018.1
第一年過完了,迷茫到了一個新的階段,知道自己學的能做什麼,卻不知道知道自己想做什麼
這時候看到了大佬的部落格,感覺自己對 Java Web 方面挺感興趣的,正好自己之前也挺喜歡寫 Java 的(強迫症喜歡整潔的程式碼),就嘗試從 SE 轉向 EE,學習了 Servlet + JDBC + Tomcat 的基礎知識,以及一些網頁的基本知識,一開始的時候,對 Web 沒什麼概念,隨便什麼問題都能搞上一天
2018.1 - 2018.7
考完試的小學期,開始正式做第一個 Demo,我記得在做之前,還做了一遍大佬的 CustomerManagement,然後自己歷時半個月終於做完了第一個商品管理 Demo,然後就到了春節,就去玩了
回到學校後,想著半個月沒動手了,就做了個模擬登入過程的 Demo,說到這個就覺得羞愧了,模擬登入過程(查詢資料庫來匹配使用者資訊),並沒有真正地登入(保持登入狀態),當時覺得什麼 Cookie、Session 什麼的可難學了,就一直沒去學
這段時間有一個重要的節點:4.15,通過 GitHub Pages 開了自己的部落格,把之前寫的文章轉了過去
五月份開始接觸框架,開始學 Spring,搭建 SSM 專案環境,用 SSM 來重構之前的 Demo,先修改了商品管理系統的後臺程式碼 —— new-p-m,覺得沒什麼意思,就接著修改了登入介面的程式碼 —— Registration-login-interface2,這時候還是模擬登入的介面,就覺得需要做點改變,就做了保持登入狀態的第二個版本,接著就做了攔截器和過濾器驗證的版本
最後還去香港城市大學的 ACM 比賽劃了一波水,就結束了大學一半的生活
大三開始
八月份底,把登陸介面和管理系統結合在一起了,並且加入了 AOP 和 事務的配置 —— ProductManagementSystem,前幾天又加了限制登陸的(只是資料庫儲存使用者狀態)功能,然後就到了寫這篇文章的時間了,正在學習 Shiro,打算將其加入這個專案,接下來還會另開一個專案用資料庫的相關知識來做一個迷你版的秒殺系統,任重道遠
現在以及接下來的半年
實習方面
提前學習計算機網路和作業系統(我們學校大三下才教),複習基礎知識,同時開始準備去找明年的暑期實習,之前有機會受到了另一位大佬的指點,非常感謝他給出的意見和建議,同時很感謝他全盤否定了我自己做的簡歷(讓我看清了方向),平常偶爾看一看面經熟悉一下,爭取能夠拿到進入大廠的機會吧
專案方面
除了上面說的 Shiro 和 秒殺系統,還打算學了 Spring MVC 的原始碼之後試著去造一個小輪子,感覺對 Spring MVC 的整體流程還是掌握得很好,做個輪子更好彌補一下
總結
其實一路走來,有不甘,但是也有滿足,怪自己太晚接觸 Java Web,上大學前沒學過程式設計等等,但這些也就只是想想而已,每次迭代一個新功能的時候,就是自己最滿足的時候
自己的練手專案放在 GitHub 上,能夠幫助到哪些剛接觸的 Java Web 的人,也讓我很滿足,放個 GitHub 吧,大家來一起玩耍: