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架構核心思想,以自己方便舒適為第一設計原則,實則扭曲了設計宗旨,將業務邏輯放在服務之中,使得“服務員”做“廚師”的工作,小飯店是可以的。
相關文章
- Xilem:Rust中的UI架構RustUI架構
- 商業級專案——基金客戶端的架構設計與開發(下)(附原始碼)客戶端架構原始碼
- 前後端分離架構中的介面設計後端架構
- 超讚!推薦一個專注於Java後端原始碼分析的Github專案!Java後端原始碼Github
- .Net Core後端架構實戰【1-專案分層框架設計】後端架構框架
- 讓你的Rails專案保持清潔AI
- qemu原始碼架構原始碼架構
- 【架構師成長必備】如何閱讀一個開源專案的原始碼?【石杉的架構筆記】架構原始碼筆記
- 程式碼生成器專案架構圖架構
- iOS 專案架構與程式碼規範iOS架構
- 專案重構之架構架構
- 區塊鏈眾籌專案的DAO開發組成架構(成品原始碼演示)區塊鏈架構原始碼
- Python後端架構演進Python後端架構
- 前後端專案結構規範性記錄後端
- Lru在Rust中的實現, 原始碼解析Rust原始碼
- SSM專案整合——後端SSM後端
- SpringMVC的專案架構思想SpringMVC架構
- 專案-整體架構架構
- 專案-安全架構架構
- 談談專案架構架構
- Springboot+shiro+mybatis-plus+vue前後端分離專案設計架構Spring BootMyBatisVue後端架構
- 掘金技術整理(一)掘金的後端架構後端架構
- 後端架構師技術圖譜後端架構
- [北京] 心知科技 招前端/後端/架構前端後端架構
- KubeSphere 後端原始碼深度解析後端原始碼
- React專案架構,掌握前端架構師的核心本領React架構前端
- 小型專案的微服務架構指南微服務架構
- Laravel 的中大型專案架構Laravel架構
- 如何架構一箇中後臺專案的前端部分(webpack + 介面配置篇)架構前端Web
- 《從零構建前後分離web專案》探究 - 深入聊聊前後分離架構Web架構
- Android專案架構搭建Android架構
- Vue專案架構優化Vue架構優化
- Android 專案最新架構Android架構
- 【DDD/CQRS/微服務架構案例】在Ubuntu 14.04.4 LTS中執行WeText專案的服務端微服務架構Ubuntu服務端
- SpringBoot後端系統的基礎架構Spring Boot後端架構
- 前端與後端分離的架構例項(二)前端後端架構
- 前端與後端分離的架構例項(三)前端後端架構
- 前端與後端分離的架構例項(一)前端後端架構