Ну вот не защищает этот механизм абсолютно.
Только если все разработчики поддерживают джентельменское соглашение _не_ использовать рефлексию, способы работы с AST, разделяют общее видение проекта и стараются поддерживать абстракции.
Но в условиях когда весь код доступен, private совершенно бесполезен для того, чтобы не пущщать
Это защищает разраба от чтения лишнего говнокода. Ты написал модуль. Мне вообще насрать, что ты там наговнякал. Можешь хоть детское порно в реализации где-то хранить. Просто дай мне удобный публичный интерфейс, который покроет мои потребности, чтобы я в кишки не лез и всё. Впервые слышу жалобы на приватность.