Amo Chen

功能上線 3 階段思考框架

不知道大家開發一項功能時,會怎麼思考讓它上線要做的事情? 我個人是使用「功能上線 3 階段思考框架(自稱)」幫助思考功能 1 個上線要做哪些事情,這個

Posted on  Aug 9, 2023  by  Amo Chen  ‐ 2 min read

靜態程式碼弱點掃描工具 - CodeQL

最近看到有專案的 GitHub Actions 在用 CodeQL, 所以查了一下什麼是 CodeQL 。 原來 CodeQL 是 1 套開源靜態程式碼弱點掃描工具,每個人都可以使用這套工具對程式碼進行弱點掃描,例如 SQL

Posted on  Aug 8, 2023  by  Amo Chen  ‐ 1 min read

multiprocessing 模組進階篇 - Pipe, Queue, Array, RawArray 以及 Structure 之教學範例

用範例輕鬆學 Python multiprocessing 模組 一文中提到 4 種 IPC(Inter Process Communication)方法,分別是:

  • 以參數(args)的方式傳遞資料
  • 以共享記憶體(Shared Memory)中的 Value 物件傳遞資料
  • 以 fork 方式傳遞資料, fork 出來的子 process 會繼承父 process 的資源,所以可以存取原本父 process 內的資料
  • 透過 Manager 共享資料, Manager 會在一個稱為 server process 的 process 中管理共享的資料,並且代理其他 process 操作這些共享資料

除了上述幾種方式之外, Python 也有提供其他方式滿足開發者對於 IPC(Inter Process Communication) 的相關需求,本文將額外介紹 Pipe, Queue, Array, RawArray 4 種方式。

Posted on  Aug 7, 2023  in  Python 程式設計 - 中階  by  Amo Chen  ‐ 5 min read

PostgreSQL 的 RETURNING 子句

你知道 PostgreSQL 的 INSERT/UPDATE/DELETE 語句(statement)支援 RETURNING 子句(clause)嗎? PostgreSQL 的 INSERT 可以這樣寫: INSERT comment (name, text) VALUES ('JoJo', 'Hi') RETURNING id; 支援 RETURNING 子句的好處是像這種由資料庫產生

Posted on  Aug 5, 2023  by  Amo Chen  ‐ 1 min read

白話文解說 GitHub Actions

GitHub 有 1 個功能稱為 GitHub Actions, 可以讓開發者自動化軟體開發流程,例如編譯、測試,甚至是部署等等,你可以選擇在主線(main branch)更新時觸發你所設

Posted on  Aug 3, 2023  by  Amo Chen  ‐ 1 min read

Python x VSCode x Docker

現在不少人都會選擇 VSCode 作為開發的文字編輯器使用,除了有各式各樣的擴充(extension)可以使用之外,還可以用 GitHub Copilot 加速開發。 不過好像比較少文

Posted on  Aug 2, 2023  by  Amo Chen  ‐ 1 min read

Python 與各種向量資料庫使用範例

隨著向量資料庫的應用開始普及,後端工程師又多了 1 種資料庫要學習了⋯⋯ 所幸有好心人整理了 1 篇 Python 與各種向量資料庫使用的範例,文件所使用的向量資料

Posted on  Aug 1, 2023  by  Amo Chen  ‐ 1 min read