软件开发中的服务层与测试策略
1. 拓展服务与代码结构优化
在拥有分配服务之后,我们可以考虑构建一个释放服务。在相关代码库中,已经添加了端到端(E2E)测试和一些存根服务层测试,方便我们开始开发。如果这些还不够,我们可以深入 E2E 测试和 flask_app.py 文件,将 Flask 适配器重构得更符合 RESTful 风格,而且这样做无需更改服务层或领域层的代码。若要构建一个只读端点来检索分配信息,可采用最简单的方法,即在 Flask 处理程序中直接使用 repo.get() 。
2. 服务的类型与职责
在开发中,我们会遇到两种类型的服务:
- 应用服务(服务层) :负责处理来自外部的请求并协调操作。其工作步骤通常包括从数据库获取数据、更新领域模型以及持久化更改。将这些繁琐的操作与业务逻辑分离,有助于保持代码的整洁。
- 领域服务 :是属于领域模型的一部分逻辑,但不适合放在有状态的实体或值对象中。例如,在购物车应用中,税收规则可以作为一个领域服务。计算税收与更新购物车是不同的任务,它是模型的重要组成部分,但为其创建一个持久化实体并不合适,可使用无状态的 TaxCalculator 类或 calculate_tax 函数来完成。
3. 项目目录结构组织
随着应用程序的增长,我们需要整理目录结构。以下是一种可能的组织方式:
.
├─
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



