В большинстве сценариев, которые я пишу, оба параметра с командной строкой разрешены.
Это позволяет «ленивым» пользователям, которые хотят установить и забыть параметры, сделать это.
Это также позволяет переопределять эти параметры в особых случаях из командной строки.
Для тех, кто не хочет рисковать тем, что их параметры могут быть установлены неправильно, они могут просто использовать параметры.
Иногда у меня даже будет больше уровней в иерархии, в порядке приоритета:
- Значение установлено во время работы программы.
- Параметр командной строки.
- Переменная среды.
- Локальный конфигурационный файл.
- Глобальный конфигурационный файл.
- По умолчанию.
Таким образом, для каждой переменной вы просто работаете на в этом списке, устанавливая для него соответствующее значение, если оно есть.