물론 이건 개인 개똥철학인데


클래스에 게터 세터를 넣는다는거 자체가


클래스 내부의 데이터를 보겠다는거고


캡슐화를 위반하는 거라고 생각함.


또한 그 클래스를 사용하는 소스 코드도 클래스 내부 자료구조에 의존하기 때문에


의존성 또한 이상해짐


(왜 사용자 코드가 순전히 도구/툴인 하위 클래스(클래스 내부 자료구조)에 의존성을 가져야 되는가?)


즉, 사용자는 클래스의 메소드를 통해 클래스를 조작해야 하고, 사용자가 클래스 내부 자료구조를 보는 순간 의존성 및 캡슐화가 깨진다.




그러면 클래스 변수들을 퍼블릭으로 가면 되지 않느냐 -> struct로 단순화하는게 더 낫지 않나?


그런 느낌임


관련된 스택오버플로 찾아봐도 비슷한 의견들이 많은걸로 보아, 많은 개발자가 이런 생각을 공유하고 있는것 같다.