一个示例项目,展示了清洁架构和单一仓库结构,用于设计具有共享域的多个 Web 服务。
「清洁架构」在许多项目中与「DDD(领域驱动设计)」和「MSA(微服务架构)」一起广泛使用。本项目是基于理念的倡议,利用 TypeScript(一个单一仓库设置)和清洁架构,有效地扩展和维护共享同一领域的各种 Web 客户端服务。然而,如果项目是一个主要关注简单 UI 的小型应用,或者 API 服务器与客户端紧密耦合,采用清洁架构可能会因为代码复杂性和模板代码增加而影响可维护性。
在本示例项目中,使用 Yarn 提供的 Workspaces 来构建单一仓库。单一仓库由 Domains 和 Adapters 层作为独立的包组成,而每个服务也单独打包。这些服务直接利用、扩展或继承来自 Domains 和 Adapters 层的元素来构建各自的实现。
与许多架构一样,清洁架构的主要目标是分离关注点。它根据每个关注点划分层次,围绕领域进行设计,而不是细节实现,并确保内层不依赖于外部元素,如框架、数据库或用户界面。
暂无开放 Issues,或尚未同步最近议题。