這些是軟體架構中廣泛使用的概念,因為它們有助於建構和保持程式碼更有組織性。現在就了解每個人的角色和責任!
Service 是負責驗證使用者發送的請求的層。換句話說,它負責業務規則或應用程式邏輯。
為了更容易理解,假設您有一個將執行銀行交易的應用程式。在交易完成之前,需要驗證一些訊息,例如帳戶是否有信用額度、是否存在重複訊息導致資料庫衝突、發送的訊息是否正確等驗證適用於邏輯和業務規則。
應用程式背後的所有邏輯都委託給軟體內的服務層,正是這一層將指示發送的資料是否符合預期。
該層負責協調資料庫和應用程式的其餘部分。它將用戶提供的資料保存在資料庫中。換句話說,CRUD(建立、讀取、更新和刪除)的複雜性隱藏在 Repository 層中,在這裡將存取資料庫並操作發送的資訊。
透過隔離資料庫存取邏輯,程式碼變得更乾淨、更容易理解。
控制器處理使用者請求並向其發出回應。因此,它接收輸入(通常透過 WEB 以 HTTP 形式),驗證並呼叫服務來處理業務邏輯,然後將回應傳回給使用者。
換句話說,它會先驗證使用者傳遞的資料(例如必填欄位、資料類型或格式以及 ID 驗證),然後再將這些資料傳遞給服務,而服務又會驗證業務邏輯。之後,Controller 向使用者發送回應,告知請求是成功還是失敗。
當使用者發出 HTTP 請求時,控制器 會接收它並執行預先驗證。如果一切正確,請將其發送至服務。
服務將獲取資訊並根據應用程式背後的邏輯進行驗證。如果一切正常,請將請求傳送到儲存庫。
儲存庫會根據傳送到控制器的請求來保存、更新或刪除這些資料。
控制器接收最終回應並將其發送給用戶,告知操作成功或錯誤。
我們看到每一層都有自己的職責,這使得程式碼維護更容易。
服務:業務邏輯、流程驗證
儲存庫:負責資料庫中的CRUD
控制器:負責透過API接收請求並通知使用者最終訊息。
以上是了解服務、儲存庫和控制器,PT。 1的詳細內容。更多資訊請關注PHP中文網其他相關文章!