
側欄 Use Case - Clean Architecture in TypeScript
購物車側欄第一階段的 API 處理完畢後,我們一樣需要重構為 Use Case 來保持架構的一致性,以及後續的可擴充性,我們會繼續使用 AI 來協力完成這個修改。
購物車側欄第一階段的 API 處理完畢後,我們一樣需要重構為 Use Case 來保持架構的一致性,以及後續的可擴充性,我們會繼續使用 AI 來協力完成這個修改。
目前對話功能除了保存紀錄外,已經是處於可以使用的狀態。接下來我們要繼續把購物車的側邊欄介面實現出來,用來呈現商品列表。
驗證大型語言模型可以順利整合後,我們需要繼續依照 Clean Architecture 的處理方式將物件拆分開來,在對話紀錄的處理上我們已經完成過一次,基本上只要依照相同的方式處理即可。
我們現在已經可以將假的對話資料傳到前端呈現出來,接下來我們繼續讓前端的對話可以實際使用 LLM(大型語言模型)產生的訊息,因此我們需要先加入一個新的 API 端點以及更新介面將對話發送到後端。
經過將對話紀錄從前端移動到後端,我們需要再更近一步將這個行為抽離成商業邏輯,基本上跟傳統開發模式沒有太大差異,主要的變化是我們將這些任務交接給 Agent(代理)來處理,人類則負責設計跟提示。
透過 AI 協力開發,我們可以節省許多以往需要花費力氣的時間。不過開發的流程並不會有太大的變化,這次我們會採用可以馬上確認成果的方式進行開發,因此會從前端的介面開始著手。
今年(2025 年) ThroughWorks 的 Technology Radar 中提及了 AI-friendly code design 的概念,討論以往軟體開發的優良實踐,也能夠對 AI 協力開發產生幫助,因此列入的評估的範圍中,在為來可能會成為採用的選項之一。
即使我們仍不確定未來會如何變化,但是在良好的軟體架構跟實踐為基礎,仍可以幫助我們更好地應用 AI 來進行開發。
這一次會有前端跟後端的實作,雖然都會透過 AI 來輔助開發,但我們仍需要對功能的規劃和需求有一定理解,因此我們需要先針對介面做簡單的規劃,用於後續開發時使用。