gpt4 book ai didi

c# - 具有 100 个以上属性的类的设计模式

转载 作者:IT王子 更新时间:2023-10-29 04:28:18 24 4
gpt4 key购买 nike

对于设计具有超过 100 个属性的类,您会提供哪些意见/建议/指导?

背景

  • 该类描述了一张发票。一张发票可以有超过 100 个属性来描述它,即日期、金额、代码等......
  • 我们提交发票的系统使用 100 个属性中的每一个,并作为一个实体提交(而不是在不同时间提交各个部分)。
  • 描述发票的属性是业务流程的一部分。业务流程无法更改。

建议?

  • 在设计具有 100 个属性的类时,其他人做了什么?即,使用 100 个属性中的每一个创建类?
  • 以某种方式将其分解(如果是,如何)?
  • 或者这在您的经历中是否属于正常现象?

编辑在阅读了一些很好的回复并进一步思考之后,我认为这个问题真的没有任何单一的答案。然而,由于我们最终按照 LBrushkin's Answer 对我们的设计进行建模我给了他荣誉。虽然不是最受欢迎的答案,但 LBrushkin 的答案帮助我们定义了几个接口(interface),我们在整个应用程序中聚合和重用这些接口(interface),并促使我们研究一些可能对 future 有帮助的模式。

最佳答案

您可以像对待数据库表一样尝试对其进行“规范化”。例如,可以将所有与地址相关的属性放在 Address 类中 - 然后有 BillingAddressMailingAddress 类型的 Address 属性code> 在你的 Invoice 类中。这些类以后也可以重用。

关于c# - 具有 100 个以上属性的类的设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1633196/

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