DDD TDD Rich Domain Model Dojo Kata 项目教程
1. 项目的目录结构及介绍
ddd-tdd-rich-domain-model-dojo-kata/
├── src/
│ ├── Domain/
│ │ ├── Entities/
│ │ ├── ValueObjects/
│ │ └── ...
│ ├── Application/
│ │ ├── UseCases/
│ │ └── ...
│ ├── Infrastructure/
│ │ ├── Data/
│ │ ├── Services/
│ │ └── ...
│ └── ...
├── tests/
│ ├── Domain.Tests/
│ ├── Application.Tests/
│ └── ...
├── global.json
├── README.md
└── ...
src/
:包含项目的源代码。Domain/
:包含领域模型,如实体(Entities)和值对象(ValueObjects)。Application/
:包含应用层代码,如用例(UseCases)。Infrastructure/
:包含基础设施代码,如数据访问(Data)和服务(Services)。
tests/
:包含项目的测试代码。Domain.Tests/
:领域模型的测试。Application.Tests/
:应用层的测试。
global.json
:项目的全局配置文件。README.md
:项目的说明文档。
2. 项目的启动文件介绍
项目的启动文件通常位于 src/
目录下,具体文件名可能因项目结构而异。例如,如果项目使用 ASP.NET Core,启动文件可能是 Program.cs
或 Startup.cs
。
// Program.cs
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;
namespace YourProjectNamespace
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>();
});
}
}
3. 项目的配置文件介绍
global.json
文件通常用于配置 .NET SDK 版本和其他全局设置。
{
"sdk": {
"version": "3.1.100"
}
}
此外,项目可能包含其他配置文件,如 appsettings.json
,用于配置应用程序的设置。
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*"
}
这些配置文件用于设置日志级别、允许的主机等。