Эту практику, насколько я помню, начали применять в Java, где свойств у классов нет, а есть только поля.
Как следствие, для переопределения логики и упрощения рефакторинга: Удалили одно поле, добавили другое - не ломался публичный интерфейс, т.к. сеттеры/геттеры можно поправить в одном месте, нежели править логику во всех местах, где дёргаются поля.
Если в языке есть свойства, то да, подобное не имеет особого смысла, т.к. сами по себе являются эмуляцией свойств.