Witam
Mam takie teoretyczne pytanie do ludzi bardziej doświadczonych.
W książkach zawsze mamy napisane, że jest coś takiego jak private, public, protected ale zawsze można zrobić to samo nie używając tych operatorów. Autorzy nie piszą jakie jest zastosowanie w praktyce i w czym to tak na prawdę się przydaje, po co ograniczać dostęp.
Czytając różne materiały, kody źródłowe, często napotykam się na funkcje typu set() i get() zmieniające zmienne prywatne.
Po co tworzyć takie funkcje skoro to samo możemy zrobić jeśli ta zmienna jest publiczna wpisując obiekt.x=wartość. I tak i tak zmieniamy jej wartość więc po co utrudniać sobie życie funkcjami?
Do tego mając operatory widoczności - rozumiem, że jeśli klasa jest gigantyczna i ktoś z niej miałby korzystać to może by się do tego przydały ale (mając moje małe doświadczenie) jakoś tego nie czuję. Mam klasy i wiem co w nich jest i równie dobrze wszystko mogłoby być publiczne i na tym bym operował. Mógłby mi ktoś, kto pisał jakieś duże projekty powiedzieć jakie to ma realne i praktyczne zastosowanie ?
Pozdrawiam