Я создаю программу для запуска нескольких различных анализов на наборе данных. Различные виды анализа представлены различными объектами инструмента анализа (например, «AnalysisType1» и «AnalysisType2»). Инструменты анализа используют одни и те же параметры. Программа управляется из графического интерфейса, в котором все параметры задаются пользователем. То, что я пытаюсь понять, - это самый элегантный/лучший способ поделиться параметрами между всеми компонентами программы. Варианты, о которых я могу думать, включают:Обмен параметрами между объектами
- Храните все параметры в графическом интерфейсе и передавайте их каждому инструменту анализа, когда он выполняется.
- Сохраняйте параметры в каждом из инструментов и обновляйте параметры во всех инструментах каждый раз, когда они изменяются в графическом интерфейсе. Затем они готовы идти всякий раз, когда выполняется анализ.
- Создайте объект ParameterSet, который содержит все параметры для всех компонентов. Дайте ссылку на этот объект ParameterSet для каждого компонента, который в нем нуждается, и обновите его параметры, когда они будут изменены в графическом интерфейсе.
Я уже пробовал # 1, а затем # 2, и по мере того, как сложность возрастает, я подумываю о переходе на # 3. Есть ли причины не применять этот подход?
Спасибо. Вероятно, это хороший способ. Этот подход считается «пифоническим»? – PProteus
Считается объектно-ориентированным. Вы используете объекты, поэтому это должен быть ваш подход. – AndreyF