Я пишу несколько сценариев Ruby в стиле Unix, которые принимают флаги опций. Обычно я пишу много STDOUT.puts
и STDERR.puts
отчетов в этих скриптах. Теперь мне интересно, будет ли «хорошо» вставлять флаги --verbose
или -q
для включения или выключения полезного вывода в STDERR.
Два аргумента против этого:
- это сделает программу более сложной,
- пользователи уже могут отключить вывод журнала, перенаправив STDERR в / dev / null
Но опять же, одним из принципов философии Unix является то, что молчание является золотым, что подразумевает, что всегда должен быть флаг режима --verbose. Но разве это не противоречит принципу создания небольших программ, которые хорошо выполняют одну задачу?
И второй вопрос: если молчаливые / подробные флаги - хорошая идея, должна ли многословность быть по умолчанию?
Могут ли некоторые гуру программирования UNIX посоветовать?