如果我们考虑一个标准的持久化存储库,解决方案很容易。我们将 IStuffRepository 放在领域层中,将 StuffRepositoryImplementation 放在基础设施层中。 但是当我们想要包装第三方 API 时,什么是好的模式呢? 我们可以应用相同的模式,在领域层中有一个...
我正在重构一个应用程序,并试图找出某些逻辑应该放在哪里。例如,在注册过程中,我必须根据用户的电子邮件地址检查用户是否存在。由于这需要测试用户是否存在于数据库中,因此似乎这种逻辑不应与模型绑定,因为它的存在取决于它是否在数据库中。 但是,我将在存储库上有一个负责按电子邮件等获取用户的方法。如果...
例子: 我有两个有界上下文Exams和Courses。 Exams上下文具有一个Student实体,其中包含有关参加考试的学生的信息。而Courses上下文具有一个教师实体,其中包含有关授课教师的信息。 我还有一个用于用户身份验证和授权的AuthService(纯CRUD)。 AuthSe...
我对应用程序服务的理解是它们将域和用户界面连接在一起。换句话说,它们为控制器提供服务,以便对域执行操作。 我的应用程序中有以下项目布局: - 域核心 - 基础设施 - 服务接口 - Web UI - 视图模型 - 视图 - 控制器 - 服务(应用程序服务) ...
我有一个Zone对象的树结构: class Zone { protected Zone $parent; public function __construct(Zone $parent) { $this->parent = $parent; ...
我已经学习了几天的洋葱架构。我知道依赖关系应该总是朝着中心去,以及如何使用依赖注入来实现这一点。但我还有几个问题无法解决。 Can a model (or entity) reference a repository interface or a service interface? Eg...