Например, следующий код становится очень длинным.Затем я должен передать их каждому в соответствующие функции.Преимущество здесь в том, что я могу легко указать все значения по умолчанию в одном месте (для меня класс __init__
).
### Parse Arguments ###
self.rui_server = self.args.get("Server", "https://url.com")
self.system_name = self.args.get("SystemName", "Generic_Accessor")
self.predicates = self.args.get("Predicates", None)
self.keywords = self.args.get("Keywords", None)
self.number_of_tests = self.args.get("NumberOfTests", None)
self.matching_lookback_count = self.args.get("MatchingLookbackCount", 10)
self.update_period = self.args.get("UpdatePeriod", 3) # in days
self.readable_logs_key = self.args.get('ReadableLogsKey', None)
VS
self.args.setdefault("Server", "https://url.com")
...etc...
Затем сделать self.args
доступным длякаждый метод или подкласс.В моей реализации нет проблем со всеми, кто имеет доступ ко всему остальному.
Так что же на самом деле лучше и почему?Или есть еще лучший способ, о котором я не знаю?