В настоящее время я работаю в Qt и поэтому С++. У меня есть классы, в которых есть частные члены данных и функции публичных членов. У меня есть публичные получатели и сеттеры для членов данных, доступных в классе.
Теперь мой вопрос: если у нас есть получатели и сеттеры для членов данных в наших классах, то какой смысл делать эти члены данных частными? Я согласен с тем, что частные члены данных в базовых классах звучат логично, Но кроме того, наличие частных членов, и поэтому их получатели и сеттеры не кажутся мне логичным.
Или вместо мы можем сделать все переменные общедоступными, чтобы вообще не было необходимости в getters и seters? Является ли хорошей практикой иметь их? Я знаю, что частные члены обеспечивают абстракцию данных, но наличие геттеров и сеттеров фактически позволяет легко получить доступ к этим переменным. Любые указания относительно этого приветствуются.