能心平氣和的工作,應該是職場上最基本的需求之一吧!前一陣子在不適合自己的職場環境待了三個月,在試用期的最後一週提出離職,卻也發現原來自己多麼不喜歡那份工作:才三個月就讓人每天鬱鬱寡歡,知識技能也無成長,更領著感到「雞肋」的薪資,以及天天忍受塞車通勤的鬱悶。離職之後反而過得充實,一邊求職一邊充電,要更謹慎地做出職涯規劃。
轉職,真的是段讓人感到焦慮的過程,但是藉由觀察求職市場上的職缺,我們可以更清楚地了解資訊工作的趨勢為何。由於自己是資料科學相關背景的資訊學習者,因此求職初期,以「資料分析師」與「資料工程師」作為目標,然而透過每日檢視人力銀行的職缺配對信,我發現了「後端」、「DevOps」、「SRE」相關的工作反而會主動找上門,而且這些職缺與數據工作都有或多或少的關係,因此此篇學習筆記,我將整理這段求職期,自學Node.js實作RESTful API的相關內容。
當工作中需要收集資料時,API往往是我們重要的幫手,例如我之前寫的文章「News API新聞擷取的好幫手 - 使用Python」;但是大家有沒有想過,自己也會碰到需要提供他人資料的狀況,這種時候我們就需要有實作API的概念囉!但是為何在資料科學領域,甚至是前陣子我參加的「巨量資料分析就業養成班(BDSE)」,都沒有API相關的課程教學呢?主要原因是實作API的過程,屬於後端與資料庫的領域,這次我所學習的Node.js,是使用JavaScript而非過往用習慣的Python,因此多數資料科學學習者應該沒接觸過這部分。
目前我的部落格沒有JavaScript的基礎教學,事實上我的JavaScript能力也是前陣子在BDSE課程才建立的,加上ECMAScript近來每年都釋出新的撰寫規範,有鑑於更新相當快速,因此我也暫不打算將JavaScript的基礎寫法重新整理為網誌文章。
為了快速養成求職需要的資訊技能,我讀了@andy6804tw的「從無到有,打造一個漂亮乾淨俐落的 RESTful API」並將其內容整理如下,這系列文章淺顯易懂地列舉了眾多好用的套件,並給出了簡單的實作範例,還包含簡單的JavaScript基礎教學,但是我在修Bug(原因為這是2017年的文章,部分套件已更換撰寫方式)的時候,發現這系列文章關於RESTful API的程式碼已無法執行,故另外找了腳印哥的「Node.js RESTful Web API 範例 for MySQL」這篇文章繼續研讀實作,才終於實驗成功。
程式碼的部分是兩位原作者撰寫、整理的,我僅做整理微調,是站在巨人的肩膀才得以完成Node.js與RESTful API的初探,若大家想要將範例的MySQL/ Maria DB改成其它資料庫如PostgreSQL等,就得再額外花時間研究相應資料庫套件的用法囉。