我将为工程师编写一个计算器,它可以根据建筑材料计算某些结构的性能
我有一堆材料,每种材料都有相同的属性(强度、密度等)
用户将输入一些特定于结构的属性(尺寸、位置等),并根据这些属性和材料属性,计算器将输出结构的属性(例如各种应力、压力等)
存储材料属性的最佳方式是什么?现在,我想我将使用一个包含一系列类的模块:
class Concrete_1:
strength=1
hardness=1.5
class Concrete_2:
strength=3
hardness=7
这样,在所有计算中,我可以使用简单的方法来引用每个材料属性,例如:
StructureProperty=properties.Concrete_1.strength*UserInput
你认为这是个好办法吗?我的目标不是一部代码杰作,但我想确保这不是一个愚蠢的想法。处理这种事情的聪明方法是什么
在没有太多上下文的情况下,我建议您采用这种解决方案:
定义一个超级类,该类使用用户输入进行所有需要的计算(我刚刚制作了一个非常简单的示例),并返回结构属性所需的信息。然后,可以像以前一样创建新的材质子类并定义其特性。通过将其定义为类方法,可以避免实例化仅包含常量的材质
一个使用示例是:
你提出的解决方案肯定会奏效,我个人认为这不是错误的,但我相信这种方法有点花哨
注意:没有必要在Material类中定义属性,但我认为如果每个子类都共享它们,那么将它们放在那里就很好了
相关问题 更多 >
编程相关推荐