gpt4 book ai didi

oop - 我应该将东西注入(inject)我的实体吗?

转载 作者:行者123 更新时间:2023-12-04 22:39:02 25 4
gpt4 key购买 nike

在使用 IoC 容器时,将其他类注入(inject)其中是否被认为是好的设计?即持久性类

最佳答案

一般来说,我建议不要这样做。实体就是这样,应该代表您的核心域的一些可识别和重要的部分。他们应该有一个责任,并且非常非常擅长这样做。如果实体需要额外的服务来完成一项任务(比如坚持自己),你就开始让基础设施之类的东西潜入你的领域。即使 Invoice 能够计算其帐单值(value)的概念也不一定是 Invoice 类的责任。它可能需要诸如销售税、运费、客户折扣之类的东西。一旦您打开这些门并尝试开始将这些项目带入您的 Invoice 实体,它就变成了一个 Everything 类。领域服务更适合实体的协调和向它们提供服务。基础设施服务更适合诸如持久性和外部通信之类的事情。两者都可以通过 IoC 注入(inject)其他服务(并鼓励它们本身不会成为臃肿软件)。

关于oop - 我应该将东西注入(inject)我的实体吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/98801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com