Rust中後端的清潔Clea架構原始碼專案
許多架構模式來設計 Web 應用程式。一個著名的是Robert C. Martin的“清潔clean架構”:
該架構將專案分成不同的層,以生成符合以下要求的系統
- 獨立於框架。該架構不依賴於某些功能豐富的軟體庫的存在。這使您可以將此類框架用作工具,而不必將系統塞入其有限的約束中。
- 可測試。可以在沒有 UI、資料庫、Web 伺服器或任何其他外部元素的情況下測試業務規則。
- 獨立於使用者介面。UI 可以輕鬆更改,而無需更改系統的其餘部分。例如,可以用控制檯 UI 替換 Web UI,而無需更改業務規則。
- 獨立於資料庫。您可以將 Oracle 或 SQL Server 換成 Mongo、BigTable、CouchDB 或其他東西。您的業務規則未繫結到資料庫。
- 獨立於任何外部架構。事實上,您的業務規則根本不瞭解外部世界。
但是,在我看來,所謂的“乾淨架構”過於複雜,其行話只能與專業架構師產生共鳴,而且抽象層太多。它不適用於實際編寫程式碼的人。
這就是為什麼我提出另一種方法,同樣靈活但更簡單,可用於傳統的伺服器端呈現的 Web 應用程式和 JSON API。
據我所知,這個架構沒有正式的名字,但我已經成功地將它用於 Rust、Go 和 Node.JS 中超過數萬行程式碼的專案。
使用這種架構的優點是,如果將來修改需求或一個依賴項,則更改是本地的並且是孤立的。
原始碼點選標題
banq評:作者沒有充分理解Clean架構核心思想,以自己方便舒適為第一設計原則,實則扭曲了設計宗旨,將業務邏輯放在服務之中,使得“服務員”做“廚師”的工作,小飯店是可以的。
相關文章
- 讀Flink原始碼談設計:FileSystemConnector中的整潔架構原始碼架構
- [譯] Go 語言的整潔架構之道 —— 一個使用 gRPC 的 Go 專案整潔架構例子Go架構RPC
- 《整潔程式碼cleancode》的javascript原始碼實現專案JavaScript原始碼
- Xilem:Rust中的UI架構RustUI架構
- Lambda和清潔程式碼的一個重構案例 - frankel
- 架構整潔之道-書中箴言架構箴言
- 超讚!推薦一個專注於Java後端原始碼分析的Github專案!Java後端原始碼Github
- 前後端分離架構中的介面設計後端架構
- .Net Core後端架構實戰【1-專案分層框架設計】後端架構框架
- Springboot+shiro+mybatis-plus+vue前後端分離專案設計架構Spring BootMyBatisVue後端架構
- 【架構師成長必備】如何閱讀一個開源專案的原始碼?【石杉的架構筆記】架構原始碼筆記
- SpringMVC的專案架構思想SpringMVC架構
- 程式碼生成器專案架構圖架構
- Python後端架構演進Python後端架構
- 區塊鏈眾籌專案的DAO開發組成架構(成品原始碼演示)區塊鏈架構原始碼
- 清潔能源的未來報告:氫專利
- 清潔程式碼:職責 — Janos Pasztor
- 專案-整體架構架構
- 專案-安全架構架構
- Android專案架構搭建Android架構
- “整潔架構”和商家前端的重構之路架構前端
- SpringBoot後端系統的基礎架構Spring Boot後端架構
- 前後端專案結構規範性記錄後端
- apple產品清潔|如何清潔iPhone、AirPods和MacBook?APPiPhoneAIMac
- SSM專案整合——後端SSM後端
- 年終回顧,為你彙總一份「後端架構技術清單」後端架構
- React專案架構,掌握前端架構師的核心本領React架構前端
- Lru在Rust中的實現, 原始碼解析Rust原始碼
- Android 原始碼分析(一)專案構建過程Android原始碼
- 小型專案的微服務架構指南微服務架構
- 【專案原始碼】雲端計算人臉識別智慧班牌原始碼原始碼
- 如何架構一箇中後臺專案的前端部分(webpack + 介面配置篇)架構前端Web
- Vue專案架構優化Vue架構優化
- Kotlin/Native KMM專案架構Kotlin架構
- Springboot專案架構設計Spring Boot架構
- 《從零構建前後分離web專案》探究 - 深入聊聊前後分離架構Web架構
- Spring Cloud雲架構-Config Git後端SpringCloud架構Git後端
- 後端架構師技術圖譜後端架構