gpt4 book ai didi

python - 每个域模型的目录或每个层的目录,角色

转载 作者:行者123 更新时间:2023-11-28 22:51:44 27 4
gpt4 key购买 nike

一个项目现在有超过 200 个类,每个文件一个类,将它们划分到目录中似乎是恰当的。现在我正在考虑两种不同的策略;

a) 按角色或层分组

repositories/
UserRepository
TransactionRepository
ShipmentRepository
serializers/
UserSerializer
TransactionSerializer
ShipmentSerializer
models/
User
Transaction
Shipment

b) 按类服务的领域模型分组

user/
UserRepository
UserSerializer
User
transaction/
TransactionRepository
TransactionSerializer
Transaction
shipment/
ShipmentRepository
ShipmentSerializer
Shipment

b) 的优点可能是倾向于一起更改的类被组合在一起,而 a) 中具有相似内部工作原理的类可能被组合在一起。你有什么建议?

最佳答案

就我个人而言,我不喜欢aproach A。这些目录之间存在很强的依赖关系。其中一些是不必要的,并且使依赖关系难以加类管理。

例如:初级开发人员添加对 UserRepository --> Shipment 的依赖,但这在设计上是不可取的。该缺陷很难检测到(除非经过仔细的代码审查),因为存储库确实依赖于 UserRepository --> User 的模型。

但这在方法 B 中要容易得多。我们可以对目录应用一些依赖性检查策略(禁止用户 --> 装运)。

依赖管理的粒度非常重要。如果我们可以通过一些自动检查工具在更粗略的级别上进行管理,成本会低得多。

关于python - 每个域模型的目录或每个层的目录,角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21225937/

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