У меня есть около 20 различных служб, которым я должен отправлять запросы, для которых требуется немного другой набор заголовков.
Неверный устаревший код выглядит примерно так:
row = db.query_for_service()
if row.type == 'foo1'
// add common headers to request
// add foo1 specific headers 1
// add foo1 specific header 2
// add foo1 specific header 3
else if row.type == 'foo2'
// add common headers to request
// add foo2 specific header 1
...
...
...
else if row.type == foo20
// add common headers to request
// add foo20 specific header 1
// add foo20 specific header 2
// ...
send_request()
Каков наилучший способ его рефакторинга?Я рассмотрел некоторые шаблоны, которые могут работать здесь (стратегия, конструктор), но я не слишком уверен.
В настоящее время я изучаю и Java, и Python, и я хотел бы подумать о том, как решения будут различаться в двухязыки