Amo Chen

從 Python try except 的角度理解 Go 如何用 defer panic() recover() 處理例外/錯誤

學習 Go 的過程一定有人跟我一樣,對於 Go 用 defer(), panic(), recover() 處理例外/錯誤的方式感到困惑,特別是已經習慣使用 Java, JavaScript, Python 等程式語言的開發者來說, Java, JavaScript, Python 所提供的 try...catch , try-except 在可讀性相對友善很多之外,在開發時也直覺很多。

但要理解 Go 的 defer(), panic(), recover() 其實可以從已知的模式出發,如此原本無法輕易理解的事物,就會變成好理解許多。

本文將從 Python 的 try-except 出發,學習 Go 如何做到相同的例外(exception)處理。

Posted on  Mar 27, 2024  in  Go 程式設計 - 初階  by  Amo Chen  ‐ 5 min read

Feature Flags 正在毀了你的 Codebase

Feature Flags 是上線新功能時很常使用的 1 項技巧,它的作用是可以讓我們迅速地開關特定功能,例如下列 Python 程式碼範例,可以透過設定檔切換新舊的付款服務: USE_NEW_PAYMENT_SERVICE = config.get('NEW_PAYMENT_SERVICE')

Posted on  Mar 25, 2024  by  Amo Chen  ‐ 2 min read

Uncle Bob 談 1 個 function 要多小才合適?

Uncle Bob 是知名軟體工程暢銷書 “Clean Code” 的作者,如果你想成為更好的程式設計師,那多少得翻翻他的著作。 “How small should a function be?” 這個 Youtube 影片

Posted on  Mar 24, 2024  by  Amo Chen  ‐ 2 min read

LangChain 怎麼玩?用 Hugging Face 結合 LangChain,做個英文對話機器人模擬面試吧

LangChain 作為 1 個框架,讓開發者可以很輕鬆地開發語言模型相關的應用,不過語言模型還是有其極限,有些功能仍須仰賴傳統的程式設計、機器學習等領域,譬如語音辨識、語音合成等等,所幸這些功能可以藉由 Hugging Face 等平台輕鬆實現。

本文將教導如何使用 Hugging Face 上的模型,並結合 LangChain 做出可以用英文對話的機器人,讓語言模型的應用跨出文字以外的領域!

Posted on  Mar 20, 2024  in  LangChain , Python 程式設計 - 高階  by  Amo Chen  ‐ 7 min read