一個(gè)適用于 .NET 的開源整潔架構(gòu)項(xiàng)目模板
項(xiàng)目架構(gòu)模式在軟件開發(fā)中扮演著至關(guān)重要的角色,它們?yōu)殚_發(fā)者提供了一套組織和管理代碼的指導(dǎo)原則,以提高軟件的可維護(hù)性、可擴(kuò)展性、可重用性和可測(cè)試性。今天大姚給大家分享一個(gè)適用于 .NET 的開源整潔架構(gòu)項(xiàng)目模板。
《.NET常見(jiàn)的幾種項(xiàng)目架構(gòu)模式,你知道幾種?》

整潔架構(gòu)
整潔架構(gòu)(Clean Architecture)是一種軟件架構(gòu)設(shè)計(jì)原則,由羅伯特·C·馬丁(Robert C. Martin)提出,它旨在使軟件系統(tǒng)更加靈活、可維護(hù)和可測(cè)試,其核心目標(biāo)是構(gòu)建一種簡(jiǎn)潔、靈活且易于維護(hù)的系統(tǒng)結(jié)構(gòu)。

分層職責(zé)
- 實(shí)體層(Entities):實(shí)體層代表了系統(tǒng)中的核心業(yè)務(wù)概念和對(duì)象。這一層包含了那些在整個(gè)系統(tǒng)的生命周期中持續(xù)存在且具有明確業(yè)務(wù)含義的實(shí)體。
- 用例層(Use Cases):用例層包含了系統(tǒng)的具體業(yè)務(wù)邏輯和用例。它協(xié)調(diào)實(shí)體層和其他層之間的交互,以實(shí)現(xiàn)特定的業(yè)務(wù)功能。
- 接口適配器層(Interface Adapters):接口適配器層將用例層與外部系統(tǒng)(如數(shù)據(jù)庫(kù)、用戶界面、外部服務(wù)等)進(jìn)行連接。它將外部系統(tǒng)的接口轉(zhuǎn)換為用例層可以理解的形式,并將用例層的輸出轉(zhuǎn)換為適合外部系統(tǒng)的格式。
- 框架與驅(qū)動(dòng)層(Frameworks and Drivers):框架與驅(qū)動(dòng)層包含了外部的框架和工具,如數(shù)據(jù)庫(kù)、Web 框架、消息隊(duì)列等。這一層通常是由具體的技術(shù)實(shí)現(xiàn)組成,為上層提供基礎(chǔ)設(shè)施支持。
.NET 整潔架構(gòu)模板
CleanArchitecture是一個(gè)適用于 .NET 的開源整潔架構(gòu)項(xiàng)目模板,此模板的目標(biāo)是利用 Clean Architecture 和 ASP.NET Core 的強(qiáng)大功能,為企業(yè)應(yīng)用程序開發(fā)提供一種簡(jiǎn)單而有效的方法。使用此模板,您可以毫不費(fèi)力地使用 ASP.NET Core 和 Angular 或 React 創(chuàng)建單頁(yè)應(yīng)用程序 (SPA),同時(shí)遵守 Clean Architecture 的原則。入門非常簡(jiǎn)單,只需安裝 .NET 模板。
項(xiàng)目源代碼

環(huán)境準(zhǔn)備
(1) .NET 9.0 SDK
https://dotnet.microsoft.com/zh-cn/download/dotnet/9.0

(2) Node.js
https://nodejs.org

.NET 整潔架構(gòu)模板安裝
Clean.Architecture.Solution.Template:
https://www.nuget.org/packages/Clean.Architecture.Solution.Template
dotnet new install Clean.Architecture.Solution.Template::9.0.8整潔架構(gòu)模板安裝后,使用模板創(chuàng)建新的解決方案。您可以選擇使用 Angular、React 或創(chuàng)建僅限 Web API 的解決方案。使用 -cf 或 --client-framework 選項(xiàng)指定客戶端框架,并提供將在其中創(chuàng)建項(xiàng)目的輸出目錄。以下是一些示例:
要使用 Angular 和 ASP.NET Core 創(chuàng)建單頁(yè)應(yīng)用程序 (SPA):
dotnet new ca-sln --client-framework Angular --output YourProjectName要使用 React 和 ASP.NET Core 創(chuàng)建 SPA,請(qǐng)執(zhí)行以下操作:
dotnet new ca-sln -cf React -o YourProjectName若要?jiǎng)?chuàng)建僅限 ASP.NET Core Web API 的解決方案,請(qǐng)執(zhí)行以下操作:
dotnet new ca-sln -cf None -o YourProjectName啟動(dòng)應(yīng)用程序:
cd src/Web
dotnet run項(xiàng)目源碼地址
更多項(xiàng)目實(shí)用功能和特性歡迎前往項(xiàng)目開源地址查看??,別忘了給項(xiàng)目一個(gè)Star支持??。
GitHub開源地址:https://github.com/jasontaylordev/CleanArchitecture




























