`claude` 開了又關、`--continue` 接了又接,一個月少說幾十個 session。某天要寫月報,我才發現一個尷尬的事實:這個月到底做了什麼
OpenSpec不適合用在我的開發情境。與其勉強自己用,不如基於 OpenSpec 的核心精神,重新設計一個適合自己的版本。
如果照上一篇的範例來看,我的CustomerController幾乎不用寫,只要extend 有GeneralApi 的 BaseController即可
每個操作的動作都離不開Create, Update, Read, Delete 這些動作為了加速以及更懶惰(誤),我們團隊討論出一個夠嚴謹也可以更快開發的架構
我們開發的每一套系統都已經安裝的scopFilter,所以我們可以透過定義一個介面來驅動scopeFiter,我們設計透過command來取得不同系統中process api的參數使用方式
由前端發起登入需求,送出帳號密碼資訊到自己系統,驗證中心處理完成後返回jwt token到(A)系統後端,(A)系統收到權限json後返回給前端
實際上這個範例使用了策略模式+工廠模式來完整處理資料流,透過Manager來處理,Manager就是類似工廠的概念,負責產出需要的物件
這樣不僅是可以節省使用if else 或者 switch的複雜度,/** @see _member */ /** @see _meneger */
Laravel的router中定義好路徑,這之前Laravel做了多少事情才讓資料流進入到到controller method中呢,callAction()
統一在Model中描述每個欄位的資料該如何被驗證,且滿足Model中的fillable欄位描述,因此把欄位名稱當成key,驗證資料當成value寫在_schema()
PHP ReflectionClass , ReflectionMethod 可應用於Attribut 等地方
PHP Attribute Laravel ,php8.1中提供了Enum方法,我們可以用於Enum, API參數描述、特定method描述等狀態
檔案上傳是非常常見的需求邏輯,如果是很基礎的將檔案存放在系統資料夾內,那麼問題不大問題在於,基於無狀態的系統運作架構如K8s,我們都會希望將檔案另外儲存起
將原始碼寫在.stub檔中,內容中如果有需要替換的則使用{{ }} 標記,例如 namespace {{ namespace }};
透過namespace來找到Vendor資料夾中安裝的composer package 中的某一個檔案路徑