Я собираюсь запрограммировать калькулятор для инженеров, который позволяет рассчитывать некоторые свойства конструкции на основе того, из какого материала она построена.
У меня есть куча материалов, и у каждого из них одинаковые заданные свойства (прочность, плотность и т. д. c.)
. Пользователь введет некоторые свойства c, определяемые структурой (размер, положение и т. д. c.), и, исходя из этого и свойств материалов, калькулятор будет выведите свойства конструкции (например, различные напряжения, давления и т. д. c.)
Как лучше всего сохранить свойства материала? Сейчас я думаю, что я буду использовать модуль с кучей классов:
class Concrete_1:
strength=1
hardness=1.5
class Concrete_2:
strength=3
hardness=7
таким образом. Во всех вычислениях я могу использовать простой способ ссылки на каждое свойство материала, например:
StructureProperty=properties.Concrete_1.strength*UserInput
Как вы думаете, это хороший способ? Я не стремлюсь к шедевру кода, но также хочу убедиться, что это не глупая идея. Каковы умные способы борьбы с такой вещью.