最近重新思考設計 API 要用什麼方式時,內心劇場演著「REST 還是 action 導向」劇本。REST 純粹主義者搬出 Fielding 2000 年的博士論文,說 POST /orders 才是正義;商業派搬出 Netflix 的 use-case 主張,說資源導向在大規模下會逼客戶端用一堆請求才能完成一件「事」,POST /checkout 才是正義。

兩邊都對,也都不對。真正的問題從來不是「選哪一種風格」,而是——

這支 API 到底在服務誰?

把 API 分成「BFF 層」與「Domain Service 層」兩個維度來看,答案會清楚很多,這篇就是把整理的過程筆記下來。

閱讀全文 »

Web API 提供的服務涵蓋很廣,File System API 已經推出一段時間,主要功能是讓瀏覽器能經過使用者授權後,與使用者本機的檔案系統做互動,這篇筆記就是將一些如何使用 File system API 記錄下來

閱讀全文 »

工作上常使用的 CLI 工具,例如 Ollama 的指令,這樣的效果如何在 Go 裡面實踐呢? 利用練習的機會把相關的流程紀錄一下

image-20240831103322975

閱讀全文 »

Open Policy Agent (OPA) 的文件上有提到 OPA API,但遇上文件有看沒有懂的情況,就得自己動手做做看才有感覺,這邊記錄實作後的理解

閱讀全文 »

了解 proto 的基本語法後,就可以來用一個程式語言實作 gRPC 服務了,本篇就用 Golang 來作範例吧,練習內容是根據官方文件所提供的教學內容,細節可以到這邊閱讀。

閱讀全文 »

距離上一次碰 gRPC 已經是 4 年前的事情了,現在又有機會接觸到 gRPC,趁這次機會重新將 gRPC 相關的東西了解一次

什麼是 gPRC,根據官網的說明

A high performance, open source universal RPC framework

為什麼選擇 gPRC 呢

gRPC is a modern open source high performance Remote Procedure Call (RPC) framework that can run in any environment. It can efficiently connect services in and across data centers with pluggable support for load balancing, tracing, health checking and authentication. It is also applicable in last mile of distributed computing to connect devices, mobile applications and browsers to backend services.

這表示 gRPC 是一個可以在各種語言/環境中,做到高效且擴充性佳的框架,十分有趣。繼續研讀下去

閱讀全文 »

Angular 17 快上線了,已經看到 RC 版釋出,當然要先玩看看,這一版讓人興奮的一定是新的 flow syntax,除此之外還有什麼有趣的東西嗎? 這篇會快速筆記一下

閱讀全文 »

VSCode 應該是很多人的主開發工具,尤其在這個一個人要身兼多語言開發時,VSCode 真的是個不錯的選擇,而 Go 在 VSCode 上的開發體驗,搭配 Go Exntesion 後,真的沒什麼好挑剔的,但還是有些設定需要做調整,這篇會筆記一些近期針對測試部分所做的設定調整。

閱讀全文 »

Go 的 time package,主要提供 time 相關的功能,這篇筆記整理一些常用的 function

閱讀全文 »
0%