laravel 面向接口

物件導向原則

solid

grasp

針對街口編程


laravel的入口是action

action 會經過 request 參數驗證(丟出422 exception) 和 service 驗證(丟出404 403 exception)。

request 經過 放入dto 規格化,不再是array,總是有設定dto的動作。

把dto 丟入 service 層,service只接受dto,service層會互相引用,interface 會描述service是什麼,能做什麼,或是提供一個可替換策略。

crud service 分開成 readService(r) 和 Alter(mutate)Service(cud)。

區分查詢跟改變的function 一個function只能做查詢或改變系統狀態 cqrs 

進到repo前會有data processing 將資料轉成array

repo只接受array 連collect都不行

repo不帶有業務邏輯


原則

如何最簡單的達成任務

只在有需要的時候創建功能 而不是用預見

簡單不是沒東西可以加 而是沒東西可以減少

不要重複

做為一個維護者 而不是開發者 不要讓下一個接手的人思考這個是啥 最小驚訝原則

Do not talk to strangers 不暴露更多細節


留言

這個網誌中的熱門文章

WINDOWS cmd 操作:查看進程、TCP連線、刪除TCP連線和進程

mongodb aggregate 筆記

mongodb shell 操作