Если вы создаете библиотеку для использования другими, вы хотите показать API и скрыть все остальное.Вы не хотите недокументированные "особенности" повсюду.Это может привести к всевозможным ошибкам, а те, в свою очередь, могут создать дыры в безопасности.
Даже если код не для кого-то другого, довольно легко забыть и опрокинуть себя, назначив что-то изпорядок, который был задуман, или мышление переменной означает одно, а значит другое.
Итак, краткий ответ заключается в том, что это всего лишь удобство программирования, но эти удобства программирования могут помочь вам создать более надежный и более безопасный код.