谨以此文纪念我的2020——不负热爱,砥砺前行
全文26339個字,可能有點長,O(∩_∩)O哈哈~
不知不覺2020年已近尾聲,2020年對于我來說是非常難忘的,它也終將被記入歷史。
我是某某學(xué)校大二學(xué)生,高中時期就開始接觸編程,已有二年(博齡三年)有余。從C語言開始進入編程世界的大門,到如今癡迷于Java與算法的世界。
這一年我用了八成的時間來學(xué)習(xí)編程,學(xué)習(xí)各種各樣的技術(shù),雖然都是比較淺顯的知識,但并不影響我想寫我這一年的年終總結(jié)。
時間過的太快了,我學(xué)東西的速度也比較快,但 … 我忘的也快,所幸我當初學(xué)各種編程知識的時候?qū)懥诵┎┪?#xff08;比較水),所以我將從這些博文的時間線路來回憶我這一種的所做所想(博文發(fā)布時間與所學(xué)時間不符)。
我的網(wǎng)名是 —— 陌生人,來杯Java可好。博文里面沒有一篇是Java相關(guān)的文章,因為寫文章確實是比較花費時間的,明年暑假之前(大二結(jié)束),我準備去實習(xí),所以我想用最短的時間來看看我對編程的學(xué)習(xí)能力有多好,我將在下文中會講述我學(xué)Java的故事。
上面的每一個專欄對應(yīng)的知識,都是出于我對編程的興趣所學(xué),當然其中有我比較痛苦的學(xué)習(xí)過程,像數(shù)據(jù)結(jié)構(gòu)、算法、匯編/反匯編之類的,我也將在下文按照時間線來逐一回憶聊聊。
具體我該從哪個時間點來說呢,現(xiàn)在是12月,那我就從去年的12月份開始回憶吧。
文章目錄
【第一篇】:寒冬臘月
【第二篇】:春意盎然
【第三篇】:烈日炎炎
【第四篇】:秋高氣爽
【第五篇】:不負熱愛,砥礪前行
前四篇大概內(nèi)容如下:
大概講述了我從 2019.12 到 2020.12 所學(xué)的編程知識,還有 藍橋杯之旅。
【第一篇】:寒冬臘月
在19年12月的前幾個月我自學(xué)了 C++和寫了一些小程序,C++學(xué)的都是一些語法基礎(chǔ),所以我沒有寫相關(guān)的技術(shù)文章,當時也沒想著寫文章,就想在csdn上面白嫖其他朋友的文章。
我也寫了很多的小程序,基本都是基于C/C++ + EasyX實現(xiàn)的,想學(xué)習(xí)的朋友可以看看哈
這些文章都是我后來發(fā)布到csdn的,其中有一個我想說的小程序,我剛來大學(xué)兩個月,從來沒有出過遠門的我有點想家,當時我在EasyX官網(wǎng)上面看了一個小程序,是基于背井離鄉(xiāng)主題的一個小程序
感覺我的代碼寫的比那個朋友好多了,通俗易懂 . . .
初探數(shù)據(jù)結(jié)構(gòu)
2019年12月15日
這一天,我開始了計算機行業(yè)的基礎(chǔ)必修課——數(shù)據(jù)結(jié)構(gòu)的學(xué)習(xí)。
我看的是那一本紫色的數(shù)據(jù)結(jié)構(gòu)書,里面的案例都是基于偽代碼實現(xiàn)的,對于我這樣的新手屬實不太友好 …
學(xué)的第一個數(shù)據(jù)結(jié)構(gòu)當然是線性表了,然后還有棧、隊列的學(xué)習(xí),當時我也沒有刷題練習(xí)算法的概念,所以我就想著抓緊把數(shù)據(jù)結(jié)構(gòu)學(xué)完。
真正讓我開始頭疼的當然是樹的學(xué)習(xí)了,因為樹的結(jié)構(gòu)很多功能都是用遞歸實現(xiàn)了,還記得那個夏天我被 漢諾塔支配的日子 …
我寫的第一篇數(shù)據(jù)結(jié)構(gòu)相關(guān)的文章是 《二叉樹(順序存儲)—— C++實現(xiàn)》,說實話,寫數(shù)據(jù)結(jié)構(gòu)相關(guān)的文章,那種感覺是真的充實,感覺每寫一篇文章就獲得了一個技能,學(xué)數(shù)據(jù)結(jié)構(gòu)的時候我也經(jīng)常畫圖理解
上面的這個就是樹的前序遍歷示意圖。樹的順序存儲基于數(shù)組實現(xiàn),比較容易理解,而用指針實現(xiàn)的鏈式樹對于當時的我,是真的感覺吃力,還好我從來沒有放棄的想法
樹的層級遍歷示意圖。
讓我記憶深刻的是——RB樹,實現(xiàn)一個簡單的RB樹就要幾百行的代碼,而我將這幾百行的代碼敲了十幾遍,當時沒有別的想法,就是想把這些代碼給記住,好在我將RB樹的原理給搞清楚了,現(xiàn)在RB樹的實現(xiàn)源碼我早就給忘了 …
RB樹旋轉(zhuǎn)示意圖。
之后我也進行了 二叉搜索樹、堆排序相關(guān)的學(xué)習(xí),樹的學(xué)習(xí)過程就這些了,當時是報著一些興趣所學(xué),感覺到數(shù)據(jù)結(jié)構(gòu)的難度了,所以樹相關(guān)的其它數(shù)據(jù)結(jié)構(gòu)我就放棄了。
2019年12月25日
學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)圖相關(guān)的知識,初次接觸DFS、BFS算法。
圖論算法部分寫的是有點懵逼的,但好在我又堅持了下來,哈哈哈~
這里我就貼兩張當時畫的圖片過來了,大家想看的直接找分類專欄就行了
數(shù)據(jù)結(jié)構(gòu)我學(xué)的并不多,因為我的腦闊已經(jīng)有點感覺涼了。
數(shù)據(jù)結(jié)構(gòu)的重要性我就不想再說了,這也為我之后參加藍橋杯打下了基礎(chǔ)。
Win32API編程
自從學(xué)了編程之后,我對生活充滿了絕對的信心,導(dǎo)致我的裝X心越來越大,所以我對Win32API進行了學(xué)習(xí),當前是學(xué)了二百來個API吧,現(xiàn)在大部分也都忘記了. …
2020年1月20日
開始學(xué)習(xí)Win32API,因為我當時看的那本紫色的數(shù)據(jù)結(jié)構(gòu),導(dǎo)致我現(xiàn)在對看書有了一絲芥蒂,所以我在B站上面找了兩套Win32編程的視頻學(xué)習(xí)。
原本我是想把視頻的鏈接貼過來給大家學(xué)習(xí)的,結(jié)果視頻被下架了,可惜 …
寫的第一篇博文是 《Win32利用CreateEvent 實現(xiàn)簡單的 —— 線程同步》,第一次感覺程序還能這樣寫?
以前寫的小程序并沒有讓我有太多的滿足感,直到我學(xué)習(xí)了win32制作的窗口之后,瞬間滿足感報表,當前我是心情愉悅了一整天 《Win32消息處理機制與窗口制作》。
這個窗口制作博文是寫于除夕夜,現(xiàn)在想想真的為當時的自己感到欣慰,過年居然還在學(xué)習(xí) …
學(xué)習(xí)Win32API所寫的有意思的博文列表如下
這些程序還是真的挺有意思的,我編程的興趣直線上升。
學(xué)了一個被稱之萬惡之源的API CreateRemoteThread —— 《Win32遠程線程注入 .dll 文件》
當時寫這個api之后想搞事,但奈何實力還是不夠,所以就打消了這個想法 …
不過我當時是寫了一個qq消息轟炸機,把我qq里面的好友都炸了個遍,雖然我被幾個好友給刪除了,哈哈哈 ~
MFC — 網(wǎng)絡(luò)編程
寒假在家期間我也玩了一些其它的東西,比較MFC框架、Win32API編程網(wǎng)絡(luò)通話小程序
說實話,這些東西學(xué)著學(xué)著就迷失了方向,學(xué)到后面就不知道我在干什么了,我為什么學(xué),學(xué)了有什么用。
【第二篇】:春意盎然
因為疫情嚴重,所以我們大二上學(xué)期沒有按時開學(xué)(延長了近三個月),我們開設(shè)了C#、SQL Server等專業(yè)課,我是用了兩個星期快速的把C# 各種語法給學(xué)完了(有C++基礎(chǔ),學(xué)習(xí)速度飛快)。
為了鞏固C#知識,所以我用了一天的時間用C#寫了個《俄羅斯方塊》小游戲出來,里面用到了各種的知識
感覺寫的還不錯,有興趣的小伙伴們可以看看。
因為想比別人快一步,所以我那些天都在搞C#,沒想到我因此愛上了C#。
WPF 桌面學(xué)習(xí)
2020年3月10日
這一天,我在創(chuàng)建VS工程的時候偶然發(fā)現(xiàn)了WPF項目工程(學(xué)校教的是winform),打開之后我的眼前瞬間亮了起來,ui界面與后臺邏輯完美分離,ui使用 xaml標記語言(為我之后學(xué)習(xí)Html CSS打下基礎(chǔ))
當時我就按下決心,一定要把學(xué)會并且給學(xué)好,所以我在網(wǎng)上找了很久的資源,但沒有找到一個滿意的教程,所以我選擇看書學(xué)習(xí),當時是買了劉鐵猛的《深入淺出WPF》,寫的是真的好
這本書講的通俗易懂,對于我這樣的新手很友好。
這段時間也是我這一年最快樂的時光,我和幾個玩的不錯的同學(xué)天天打游戲,打完游戲我就看一會這本書,每天都過的很開心,很充實。
這樣的時間持續(xù)了一個月左右吧,我把這本書給看完了,這本書的核心內(nèi)容也被我寫成了十五篇博文,可以算是一個系列文章吧——《15天玩轉(zhuǎn)WPF》:
天吶!我基本把一本書給抄完了 …
當然,其中也有幾篇是我寫代碼的過程中所想所學(xué),《15天玩轉(zhuǎn)WPF》—— MultiBinding(多路 Binding) 的實際應(yīng)用,這篇文章是我在完成學(xué)校的作業(yè)中所寫
同學(xué)們都是使用的是winform,而我使用的是wpf,沒錯,我就是這么的與眾不同。
雖然博文主題為15天虐完wpf,可是我學(xué)了一個月 …
2020年4月7日
wpf知識也學(xué)的差不多了,所以就想寫點程序出來,剛好我的高中班主任就想讓我寫一個類似抽獎的程序,所以我用wpf寫了個好看的程序出來
哈哈~ 感覺還不錯吧,挺喜慶的感覺有木有。
但我感覺一個小程序也不行啊,所以我就在騰訊課堂上買了個制作貪吃蛇的課
貪吃蛇我已經(jīng)用C/C++ 和EasyX寫過,整個視頻對我的作用就是近一步熟悉wpf,游戲效果我還是拿出來看看吧,其中我的博文中也是有的
2020年4月15日
可能是真的對于wpf的熱愛吧,我又花了點錢買了兩門課:《WPF經(jīng)典編程實例》、《WPF 記事本開發(fā)》。
WPF經(jīng)典編程實例中我寫了一些相關(guān)的博文來分享,基于wpf技術(shù)中經(jīng)常見到的
值的一說的是《WPF 記事本開發(fā)》這門課,我好像是花了100塊買的,里面講解了一個項目的開發(fā)流程,使用三層架構(gòu),MVVM設(shè)計模式,花的非常值。
但這記事本開發(fā)這門課我還有一點內(nèi)容沒有學(xué),因為老師更新的太慢了,還有就是我感覺沒有意思了,一旦我失去興趣,我就不想學(xué)了,所以看到我的系列筆記文章沒用更新完也是正常的
wpf開發(fā)記事本的每一篇文章都是有含金量的,所包含的技術(shù)也是經(jīng)常看到的。
哈哈哈,我就是這樣的一個比較容易放棄的人,可能是我后期一直學(xué)習(xí)Java、算法的一個重要原因吧,后文再說 …
算法學(xué)習(xí) 藍橋省賽
2020年5月1日
遲到了兩個多月的開學(xué)終于來臨了,在家里都發(fā)霉了 …
去年12月我報名了藍橋杯,而今年因為疫情原因省賽推遲了三個月,也就是七月份進行省賽。
在年前我學(xué)了數(shù)據(jù)結(jié)構(gòu),也就是上面我所回憶的部分,學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)就是為了學(xué)習(xí)一些經(jīng)典的算法。
對于我來說,學(xué)習(xí)算法就是為了在藍橋杯中拿個好成績。
學(xué)完一些經(jīng)典的算法之后,我也刷了一些藍橋杯的經(jīng)典題,主要是dfs和bfs相關(guān)的題目。
我知道這樣肯定是無法把算法給學(xué)會了,所以我初次接觸了LeetCode刷題網(wǎng)站,但我真正開始刷LeetCode的是在九月份、十月份。
下面就是我覺得很有用的經(jīng)典算法,我把每一種好用的算法都寫成了一篇博文
2020年7月5日
終于等到這一天,藍橋杯省賽來臨。
可能是年齡大了,哈哈(本人20歲)。我已經(jīng)不記得省賽中到底發(fā)生了什么事,也不知道比賽的題目到底有哪些,但是我知道有一個是我很喜歡的,是一個可以使用遞歸、bfs求解的題目。
寫完那個題目后,我知道我前些天學(xué)習(xí)的bfs算法沒有白費。
《藍橋杯BFS、遞歸經(jīng)典題 “走方塊“ 問題求解》這篇博文就是對那道藍橋杯省賽一個題目的解析,雖然很簡單,但我就是挺有成就感的。
除了這個題目,我也寫了一些和藍橋杯相關(guān)的bfs、bfs類的題目
有興趣的小伙伴可以翻開我的分類專欄看一看,順便來個小三連 ~
網(wǎng)上有很多大佬,在比賽的后兩天就把10個題目的解題過程發(fā)布出來了,但我比較懶,并沒有查看我的題目。
2020年7月25日
我知道了我的藍橋杯省賽成績,出乎我的意料之外,我居然拿到了省一的成績,雖然我是C組的,但我還是感覺到我很厲害,哈哈哈~
當我知道了我的成績時,我高興了一整天,當天我什么事也沒干,打了一天的游戲 …
來秀一下我的省一證書
這個證書是在九月份開學(xué)的時候老師發(fā)給我們的,之所以讓我們這二字,是因為我們學(xué)校不只我一人獲得省一,還有一個是我的同學(xué)小黑。
人生第一次參加比賽,因為疫情原因,所以每個學(xué)校都是在本校考試的。
【第三篇】:烈日炎炎
C#進階學(xué)習(xí)
在年前C#對于我來說,會用就行了,但作為一名優(yōu)秀的編程愛好者這怎么能行呢。
2020年7月10日
為了學(xué)明白C#的各種知識原理,我選擇了再次重新學(xué)習(xí),我在網(wǎng)上買了一本《CLR via C#》。
這本書在業(yè)界評分很高,微軟的一個大佬所寫,我看的也挺懵逼的,但每一天都過的很充實。
我將這本書中的很多核心部分都整理了一下,寫也些許博文
事件、委托、特性等等核心技術(shù)原理了解,讓我對C#這門語言有了一個更深層次的了解。
學(xué)習(xí)C#的小伙伴,我很推薦大家學(xué)習(xí)這本書,B站上面劉鐵猛的《C#入門詳解》講的也是賊6。
對于這本書,我每天最少也得看二十頁,最多的情況是五十頁。
因為這種類型的技術(shù)書籍看起來實在是太痛苦了,所以以至于這本書最后一百來頁我沒有看到底。
學(xué)了那么長時間的編程,一個項目也寫不了,所以我準備在網(wǎng)上找一個項目跟著學(xué)習(xí)。
Html+Css+JavaScript
2020年7月15日
我在學(xué)習(xí)C#進階知識的同時,也在自習(xí)前端相關(guān)的知識,因為上學(xué)期的前端課我沒有聽,所以我的前端非常的菜,以至于我想把前端給學(xué)好,首先我肯定先學(xué)的是 html+css,然后再學(xué)的是js。
說實話,學(xué)習(xí)前端的過程是非常的痛苦的,因為是真的枯燥,比起匯編來有的一拼。
html和css的學(xué)習(xí),我也寫了四篇博文來證明一下我也是學(xué)習(xí)過前端的人。
js的學(xué)習(xí)我用了四天的時間,我看的是一套b站上面的教程。
我把js中的核心技術(shù)都整理了出來,寫成了三篇博文,分享給各位博友參考學(xué)習(xí)。
我將這個js的專欄取名為——速成筆記。
其實一點也不速成,我也是消化了好久。
html+css+js 我學(xué)了一些,我也算是把上學(xué)期的課給補了回來,也給以后學(xué)習(xí)java打下了基礎(chǔ)。
學(xué)完前端的一些知識之后,我也嘗試了做出一些網(wǎng)頁出來,但是 … 實在是太丑了,我就不發(fā)出來給大家看了,O(∩_∩)O哈哈~
記事本開發(fā)
這套視頻我當時是買了100塊錢(網(wǎng)易云課堂),所以視頻的每一個知識點我都是在認真的學(xué)習(xí)。
2020年7月23日
這個記事本是跟windows自帶的記事本的效果是一樣的。
學(xué)習(xí)編程那么長的時間,第一次感覺寫代碼是這么的充實,因為我是在完成一個真正的項目。
這個記事本項目是基于wpf開發(fā)的,剛好我在年前也學(xué)過wpf,我在上面的回憶中所講。
這個項目中有wpf中的mvvm設(shè)計模式,逆向分析,以及各種的組件使用,我覺得是非常的賺的。
我將這個項目中的一些核心的功能寫出了一些博文分享出來了,記事本開發(fā)系列博文
wpf的一些知識碎點
如果想學(xué)習(xí)wpf的小伙伴們,可以看看我的文章,順便點個贊哈 ^ _ ^
Win32反匯編
從小到大我就喜歡玩游戲,覺得那些游戲打的好的人很厲害,但我更佩服的是那些做外掛的人。
2020年8月8日
臨近開學(xué),我選擇了自學(xué)反匯編,在年初我抽了點空學(xué)習(xí)了8086匯編,所以我直接就進行了反匯編的學(xué)習(xí)。
反匯編大部分也挺難的,要經(jīng)常寫C代碼,然后將C代碼反匯編后再看匯編指令。
剛開始我了解的是OD這個動態(tài)調(diào)試工具,這個工具非常受逆向?qū)萌藛T的喜愛。
當時我寫了第一篇反匯編的博文,是了解反匯編與OD的使用的
OD的使用界面是這樣的
之后我每天都要花四個小時的時間來學(xué)習(xí)反匯編,可能這已經(jīng)不是興趣了,而是一種熱愛吧。
之后的每一天我都將學(xué)習(xí)過的反匯編內(nèi)容整理成一篇博文,分享給他人,也給我自己復(fù)習(xí)。
我學(xué)習(xí)Win32反匯編第一次有充實感的是利用匯編實現(xiàn)兩個字符串之間的比較,匯編寫成的函數(shù)代碼看起來就炫酷吊炸天。
看起來是不是很牛逼的樣子呢。
Win32反匯編學(xué)完之后,我也嘗試了破解了一個小游戲,我將qq游戲中的一個吐泡泡的游戲給破解了,可以使用無cd、穿墻功能。
可是學(xué)著學(xué)著我就又迷失了方向,然后逆向工程這個方向我也不想學(xué)了,想不到這邊我還是一個比較容易放棄的人,O(∩_∩)O哈哈~
【第四篇】:秋高氣爽
在前面的回憶中,我說過我是一個比較容易放棄的人,學(xué)習(xí)編程僅僅是帶著興趣所學(xué)。
沒有了興趣,我也就不想學(xué)了。
Java成神之路1.0
2020年8月20日
這一天我開始了長達五個月的Java學(xué)習(xí)之旅。
在這一天之前,我從未對某一個事物如此追逐。
之所以學(xué)習(xí)Java能夠一直堅持下去,一方面是應(yīng)該真的愛上了Java,也有一方面是帶著責(zé)任學(xué)習(xí)的。
如果我再亂學(xué)的話,明年實習(xí)肯定要涼涼 …
我學(xué)習(xí)Java時將所以的代碼提交到的碼云上面了。
可以訪問我主頁查看: 我的碼云(Gitee)
對于Java,我首先學(xué)的是Java語法部分的內(nèi)容,我用的接近半個月的時間來學(xué)習(xí)。
Java基礎(chǔ)也學(xué)了各種各樣的知識:
IO流操作,注解、反射、多線程、網(wǎng)絡(luò)編程、單元測試、JDK 8新特性等待。
當時找到了一個非常好的學(xué)習(xí)方法:
使用git管理我的代碼,畫出和代碼配套的思維導(dǎo)圖。
2020年9月12日
已經(jīng)開學(xué)幾天了,我開始學(xué)習(xí)Java Web,也是第一次接觸 B/S架構(gòu)。
當時覺得 Java Web好高級,并不知道未來幾個月的我還需要學(xué)習(xí)各種各樣的框架。
Java Web里面涉及的知識就比較多了,編寫的程序需要對數(shù)據(jù)庫進行訪問,所以先需要學(xué)的是 MySql。
當時是先學(xué)習(xí)的JDBC、然后學(xué)習(xí)的是連接池、JdbcTemplate的使用。
其它的還有Java Web中的各種各樣的技術(shù),比如:前端(上面回憶所學(xué))、xml、servlet、eljstl、filter listener、jquery、ajaxjson、redis。
Java Web核心的技術(shù)其實也就這些。
2020年9月18日
開始了我的框架學(xué)習(xí)之旅,所學(xué)的第一個框架是 Spring,Spring也被稱之為 Java中的靈魂框架。
開始學(xué)習(xí)的時候肯定是有點懵逼的,各種概念,ioc容器啊,aop思想啊 …
好在我天資不錯,很快就搞清楚這些東西了(夸張夸張…)。
使用Spring進行各種配置,也是比較煩的,也是沒有想到以后會有Spring Boot 這種牛逼的框架。
Spring的各種集成啊,junit、jdbc、aop、事務(wù)等等。
Spring學(xué)習(xí)了一些配置之后,我開始學(xué)習(xí) Spring MVC,想不到這個web框架對于web工程是真的友好。
了解了spring mvc的一些常識之后,我開始了學(xué)習(xí),首先肯定是數(shù)據(jù)的響應(yīng)了唄,之后還有文件上傳,一些類型轉(zhuǎn)換器,異常處理機制、攔截器之類的,反正還是挺多的。
2020年9月23日
開始基于orm思想的持久層框架 mybatis的學(xué)習(xí)。
說實話,mybatis用的是真的挺舒服的。和我在Java2.0中學(xué)習(xí)的通用mapper配合之后,那真的是無敵啊(除了Spring Data家族)。
對于數(shù)據(jù)庫操作的框架其實都差不多,越高級的框架使用的越簡單。
還好我在多表映射那種練習(xí)了很久,以至于我現(xiàn)在學(xué)習(xí)持久層框架比較快。
2020年9月28日
這一天起,我開始了學(xué)習(xí) Maven工程和Git的一些操作。
具體也沒有什么好說的,這邊就劃水吧 …
2020年10月5日
開始了分布服務(wù)的學(xué)習(xí)(Dubbo框架)。
第一次了解一個完整的項目居然可以分為多個部分,發(fā)布在不同的服務(wù)器上。
了解了服務(wù)提供者與消費者之間的關(guān)系。
2020年10月10日
我學(xué)習(xí)了目前前端比較火熱的框架——vue。
我在wpf學(xué)習(xí)時,了解了mvvm設(shè)計模式,想不到vue也是使用這種設(shè)計模式。
我就像找到了家一樣,莫名的有一種親切感。
2020年10月18日
學(xué)完并復(fù)習(xí)了幾天的主流框架。
在之后的四十天內(nèi),跟著視頻做了個項目—— 傳智健康。
后面的實戰(zhàn)部分我自己獨立的寫了出來。
至于為什么這個簡單的項目我用了四十天,是因為中間夾了個藍橋杯國賽。
我將在下面的藍橋杯國賽回憶中分享。
傳智健康是一個醫(yī)療相關(guān)的項目。后臺主頁面就像下面的這樣
感覺還不錯吧,百度地圖這東西我當時搞了兩天,痛苦 …
這個傳智健康網(wǎng)上也有介紹,我在此就不多說了,我將這個項目發(fā)布到了Gitee中
這個項目中也有很多亮點的技術(shù),就像下面這樣,可以在各種項目中也會用到 :
喜歡的朋友可以自行下載。
2020年11月29日
Java成神之路1.0的內(nèi)容也就是這些東西:
順便再加個傳智健康。
藍橋杯國賽之旅
期待已久的國賽終于來臨了。
上次靠著運氣拿了個藍橋杯省一,不知道這次能拿什么獎。
但我有著足夠的信心,最低也要拿個國二(結(jié)果是真的拿了國二 …)。
因為在比賽之前,我刷了八十道leetcode上面的題目。
其實 … 在leetcode上面刷的那些算法題,在比賽中一個也沒用到。
比較懶,所以只發(fā)了其中一部分的題目,一半的題解沒有發(fā)布到csdn中。
2020年11月13日
江蘇的國賽定位于南京,我和小黑還有老師三個乘坐高鐵前往南京。
下午四點出發(fā),于下午五點半到達目的地。
當然,我們首先干的事肯定是先去賓館了(之前老師在網(wǎng)上預(yù)約)。
第一次去南京,新街口那邊還是有很多的老房子的,有種穿越到民國的那種感覺。
賓館安置后,我們?nèi)藴蕚淙ベ慄c提前蹲一下。
賽點離賓館最起碼有三里路,純11路出發(fā),是真的累。
走到一半時,老師帶著我們?nèi)コ燥埩?#xff0c;找了幾家店,都不滿意(因為太貴了)。
終于找了一家店,隨便點了幾個菜,我和小黑一起吃的,老師一個去吃面了。
這個菜漂亮吧,看見那三個獅子頭了嗎,三個36塊錢。O(∩_∩)O哈哈~
菜的價格讓我直接裂開,好在老師幫我們付款,我和小黑很天真的以為老師是請我們吃飯的。
吃完飯之后,我和小黑去找了老師,我們一塊11路去賽點看看。
這個賽點應(yīng)該是學(xué)院的分區(qū),還在裝修,反正看起來是非常的low的。
看完賽點之后我們就回賓館休息了,回去的時候是晚上七點,但我和小黑到十二才睡覺。
看了《花木蘭》電影,感覺還不錯。
一想到明天要比賽,我瞬間就有了點壓力了,可能明天的壓力會更大吧。
2020年11月14日
早上六點半,老師打電話讓我們起床,差點起不來。
我們收拾了一下就出門了,并且我們將賓館給退了,因為我們比完賽就是下午了。
我們在去往賽點的路邊,老師給我和小黑分別買了兩個餅作為早餐,這個餅還挺好吃的。
終于我們到往了賽點,很明顯,作為早上六點半起床的我們,肯定是第一個到達的。
很快我們進行了體溫測量,準考證身份證檢查,到達指定地址準備接受比賽的來臨。
終于,九點到了,我的手機和他人一樣都上交了。
整個比賽,前兩個小時我是非常痛苦的,也不知道是緊張還是怎么的,題目就是看不下去。
真正開始思考的時候,已經(jīng)是中午十一點了,好在我的基礎(chǔ)比較好一點,手擼代碼的速度能跟上思考的速度。
下午一點比賽結(jié)束,比賽打的賊爛,全國優(yōu)秀獎穩(wěn)了。
巧的是我媽也在南京那邊,剛好在我的附近,所以我比完賽之后并沒有立即做高鐵回去。
和我媽聊了一會后,已經(jīng)是下午四點了,我準備和老師還有小黑做高鐵回去了。
2020年11月15日
我得知了我的國賽成績 —— 全國二等獎。
可想而知,這一屆比賽的題目是比較難的,對于這個成績我是真的開心,因為達到了當初對自己的要求。
藍橋杯之旅就這樣結(jié)束了,也是一段值得懷念的記憶,所以我選擇把它給記錄下來。
Java成神之路2.0
回憶的日期離今天越來越近,在前面我回憶我在Java成神之路1.0 所學(xué)的東西。
作為一名優(yōu)秀的 Java后端開發(fā)工程師 來說,那一點知識肯定是不夠的,所以我準備迎接 Java成神之路 2.0。
2020年12月1日
這一天,我開始了我的流行框架的學(xué)習(xí),框架的學(xué)習(xí)越來越高級,越來越簡單。
學(xué)習(xí)的第一個流行的框架是 Spring Data JPA,也是一個基于orm思想的持久層框架。
作為Spring Data家族的一個重要的模塊,可想而言,這個框架是有多么的簡單,簡單到sql語句都不需要多寫了,只需要簡單的配置即可。
學(xué)習(xí)Spring Data JPA之前,我先進行了JPA的學(xué)習(xí),一些基本操作啊,JPQL的查詢操作啊。
有了這些簡單的基礎(chǔ)之后,再來學(xué)習(xí)Spring Data JPA會很容易的接受。
一些Spring Data JPA中重要的操作,比如JPQL查詢、方法名稱規(guī)則查詢、Specifications動態(tài)查詢。
還有每個持久層框架必不可少的多表查詢:一對多、多對多類的東西。
有非常強大的對象導(dǎo)航查詢。
學(xué)習(xí)過程中的代碼在gitee中可以查看
Spring Data JPA 學(xué)習(xí)路線我也拿出來分享一下
數(shù)據(jù)訪問層的知識我也學(xué)了好多了,我稍微總結(jié)了一下學(xué)的路線是什么:
JDBC --> 連接池 --> MyBatis --> Spring Data JPA --> MyBatis + 通用Mapper
通用mapper是我在Spring Boot中所學(xué),基于jpa的一個框架,使用起來非常的簡單。
2020年12月3日
開始學(xué)習(xí) Spring Boot,Spring Boot取代了傳統(tǒng)配置文件的方式,使用了純注解開發(fā)。
使用注解也是一種主流趨勢。
如果以前學(xué)習(xí)Spring時,搞了大量的配置文件,現(xiàn)在學(xué)習(xí)Spring Boot絕對非常的開心。
首先肯定是Spring Boot的簡單使用啦,然后就是一些常用的注解配置,我也花了一點時間去了解了Spring Boot的自動配置原理。
難怪現(xiàn)在很多人都喜歡用 Spring Boot的,因為它跟傳統(tǒng)的Spring配置文件方式一樣,無縫集成了其它很優(yōu)秀的組件。
剛開始使用boot整合,肯定是把Java成神1.0中的SSM框架給整合啦。
像SSM框架中的一些攔截器啊,jdbc連接池 事務(wù),mybatis,都很簡單的就可以配置了。
junit單元測試,redis,還有boot的項目打包部署等等。
還有一些其它優(yōu)秀的框架,我還沒有使用boot來整合測試,比如Spring Data JPA。
2020年12月7日
我學(xué)習(xí)了消息隊列中的 RabbitMQ。
學(xué)習(xí)消息隊列時,我感覺到了一咱似曾相識的感覺,尤其在是發(fā)送與監(jiān)聽那一邊。
我仔細想了想為什么會這么的有感覺,總感覺我在某一個地方學(xué)過的了一樣。
原來是我以前學(xué)習(xí)的網(wǎng)絡(luò)編程中接觸過相關(guān)的概念。
我在C++與Java中的網(wǎng)絡(luò)編程都學(xué)習(xí)過相關(guān)的發(fā)送與監(jiān)聽機制,不過C++版本的網(wǎng)絡(luò)編程更偏向于底層。
剛開始學(xué)習(xí)RM肯定是和大家都是差不多,先安裝環(huán)境,erlang、rm的安裝,圖形管理界面等等。
RabbitMQ 5種模式特征,分為不使用交換機與使用交換機:
- 簡單模式
- 工作隊列模式
- 發(fā)布與訂閱模式
- Routing路由模式
- Topics通配符模式
因為學(xué)習(xí)過了主流框架 Spring Boot,所以我肯定要使用boot來整合一下rabbitmq了。
搭建了生產(chǎn)者工程與消費者工程,最后在進行測試。
這個消息隊列還是很有用的,在后面的微服務(wù)中也有使用。
2020年12月10日
我開始學(xué)習(xí)了現(xiàn)在最流行的微服務(wù)架構(gòu) Spring Cloud,在Java成神1.0中,我學(xué)習(xí)了 Dubbo分布式架構(gòu)。
這兩種分布式框架在各自的場合都是很厲害。
Spring Cloud這個框架我學(xué)習(xí)的時候也是累啊,因為里面的內(nèi)容是真的多。
不過Spring Cloud與Spring Boot配置是真的強,cloud在boot的基礎(chǔ)上配置的是如此的簡單。
cloud中一些常見的組件,功能特別的強大,比如:
- 注冊中心 Eureka
- 負載均衡 Ribbon
- 熔斷器 Hystrix
- 服務(wù)調(diào)用 Feign
- 網(wǎng)關(guān)Gateway
eureka就是類似于dubbo中的zk,將一些服務(wù)發(fā)布(注冊)到一個地方,供其它的消費者使用。
負載均衡與熔斷器就是cloud強大方面的體現(xiàn)了。
網(wǎng)關(guān)提供了一些安全的校驗。
還有一些其它方面的使用啊,spring cloud config分布式配置中心,將boot的核心配置文件存放在遠程倉庫中,方便修改管理。
spring cloud bus …
spring cloud 多用于現(xiàn)在的一些大型項目中,像一些中小型項目一般都是使用dubbo的(個人理解)。
spring cloud 學(xué)完之后,我直接原地跳了兩下,是真的開心。
2020年12月14日
我開始學(xué)習(xí)ElaticSearch搜索引擎。
es有什么作用呢,網(wǎng)上有著一句話,我也不知道是不是100%正確:有搜索的地方都應(yīng)該使用es。
確實,我學(xué)完es使用后,es的好處賊多。
es的數(shù)據(jù)訪問是使用RESTFul風(fēng)格的,這一點與微服務(wù)框架cloud相似。
首先,環(huán)境安裝配置,es還有圖形管理界面的安裝。
對es的學(xué)習(xí)一共有三個階段:
- REST client工具操作es
- Java客戶端操作es
- spring data elasticsearch操作es
我在前面回憶spring data jpa的使用說過,只要是spring data家族的孩子,對數(shù)據(jù)訪問都會變得異常的簡單。
確實如此。
es的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫是差不多的,如果理解兩者的對應(yīng)關(guān)系絕對對你的學(xué)習(xí)有很大的幫助。
是不是賊像。
思維導(dǎo)圖與相應(yīng)的代碼都放在了 gitee上了。
2020年12月18日
學(xué)習(xí)前端非常強大的 node.js 與 es6新標準語法。
具體學(xué)了什么東西,都在下面的這個圖里了。
2020年12月20日
Java成神之路2.0 學(xué)習(xí)結(jié)束。
我的班級進行了為期三周的實訓(xùn)(linux配置實訓(xùn),web前端實訓(xùn))。
linux我一直沒有學(xué)習(xí),還有docker容器我也沒有學(xué)習(xí)。
我準備把linux和docker學(xué)一下,再寫一個大項目把 Java成神之路2.0中的知識給融合一下。
…
【第五篇】:不負熱愛,砥礪前行
一年的回憶結(jié)束了,新的征程也開始了。
學(xué)習(xí)編程可能是我活到目前為止做的最正確的一件事。
學(xué)習(xí)編程使我的靈魂不再空虛,不再是一個孤魂野鬼。
學(xué)習(xí)編程的路上我也曾迷茫過,不知道學(xué)了有什么用。
學(xué)習(xí)編程的路上我也更加自信了,我以責(zé)任為名,不負熱愛,砥礪前行!
作者:浪子花夢
2020年12月31日
總結(jié)
以上是生活随笔為你收集整理的谨以此文纪念我的2020——不负热爱,砥砺前行的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于51单片机的GPS公交自动报站系统
- 下一篇: 西班牙语基础必备词汇(动物和食物)