问题一:在设计领域时,如何处理配置与单据之间的关系?
在设计领域时,如何处理配置与单据之间的关系?
参考回答:
需要明确它们之间的业务逻辑和依赖关系。由于配置和单据本身没有直接关系,因此不应该将它们强行放在同一域中。相反,应该根据业务需求和操作的复杂性来确定配置是作为一个单独的域还是由相关域直接调用其数据访问对象(DAO)进行读取。同时,需要确保领域之间的边界清晰,避免出现业务属性的冗余和分散。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/620230
问题二:如何确定一个模型是否可以成为一个独立的域?
如何确定一个模型是否可以成为一个独立的域?
参考回答:
需要考虑模型是否具有业务属性的逻辑承载。如果一个模型仅仅是一个数据存储的dao,并没有在对其进行CURD操作之前需要承载的业务逻辑,那么它可能并不足以成为一个独立的域。然而,如果模型具有特定的业务属性,并且在进行CURD操作之前需要进行特定的业务逻辑处理,那么它可能可以成为一个独立的域。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/620231
问题三:资金平台中,oplog模型是否应该成为一个独立的域?
资金平台中,oplog模型是否应该成为一个独立的域?
参考回答:
oplog模型记录操作的单据类型、单据id、操作人等信息,并带有一定的业务属性。然而,它并不一定能成为一个独立的域,因为它可能只是一个业务对象存储的dao。在对其进行CURD操作之前,并不需要一个单独的域服务来承载业务逻辑。相反,相关的业务逻辑可能散落在需要使用oplog的各个域中。因此,oplog模型不应成为一个独立的域,除非其业务逻辑变得复杂到需要一个单独的域来承载。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/620232
问题四:如果一个域变得太大怎么办?
如果一个域变得太大怎么办?
参考回答:
有两种可能的情况:模型太多或代码逻辑太多。对于模型太多的情况,一般来说是因为领域切分得不够细,可能有几簇模型组被错误地放在了同一个域中。此时应重新考虑领域的划分,确保每个域只包含一个聚合根及其相关的模型簇。对于代码逻辑太多的情况,这通常是正常的,尤其是在核心域中。只要确定域底下是单簇模型,就不要害怕代码量增加。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/620233
问题五:如何处理一个既包含业务逻辑又包含数据存储的模型?
如何处理一个既包含业务逻辑又包含数据存储的模型?
参考回答:
首先需要确定它是否可以成为一个独立的域。如果模型具有复杂的业务逻辑,并且在进行CURD操作之前需要处理这些逻辑,那么它可能可以成为一个独立的域。然而,如果业务逻辑相对简单,并且可以在其他域中轻松处理,那么将模型保持为dao可能更为合适。在决定是否将模型提升为域时,需要权衡业务逻辑的复杂性、代码的可维护性以及系统的整体架构。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/620234