嗨,各位好,我是阿山~ 今年是我第二次參加鐵人賽了
還記得我去年剛轉學的時候,因為修課的緣故,授課教授要我們大家都報名參加鐵人賽,而我在去年寫的主題是 TensorFlow 相關的。坦白說,我自己根本就是沒有組織的在寫這些內容,那真的是一次完全的跨領域挑戰,因為我開始接觸了以前幾乎完全沒碰過的程式語言。
當時我連前端「三兄弟」的職責都搞不清楚。回想起大一的時候,雖然系上有教過 C++,但我學得可以說是一塌糊塗(教授甚至還讓我們用 Notepad 搭配 CMD 寫程式)。去年開始又要接觸到程式,心裡想著:「就慢慢來學吧,連高等微積分都學過了,這遲早會學會的。」結果沒想到轉學後,馬上遇到的第一個最大挑戰:畢業專題。
我原以為既然「遲早要學會的」,這一切應該不會太難。結果事情遠比我想像的複雜得多!從前端三兄弟,到接觸 TypeScript、PHP、Express.js、NoSQL、SQL、Docker、K8S、Java、Ruby 等一大堆程式語言和 DevOps,真是令人眼花撩亂。「這些東西是什麼?」「它們有什麼用途?」「要解決什麼問題?」「如何互相搭配與組織」這些 Junior Dev 的疑問不斷在我腦海中盤旋,而一想到還是得面對畢業專題,我只能硬著頭皮開始學習如何使用這些技術囉。
幸好,最後我還是順利搞定了畢業專題。在這段期間,真心感謝一些好友的技術指導與大力支持,沒有他們的幫助也很難走到這一步。程式語言的世界就是這樣,大家互相幫忙、分享所學,才能讓這個社群變得越來越好。在接下來的鐡人賽系列文章中,我會與大家分享一路以來的學習心得,並列出我在這段期間參考過且對我幫助很大的資源,雖然大部分資源是官方文件,但不得不說,很多必須掌握的知識都藏在這些文件裡。
接下來的內容不會直接從畢業專題開始,而是將這些零散的技術片段進行統整,並透過它們實作出一個 Web App。以下是我的預期架構,隨著我組織筆記的進展,可能會進行部分調整。一旦有任何變動,我也會同步更新這裡的內容。