물론 이건 개인 개똥철학인데
클래스에 게터 세터를 넣는다는거 자체가
클래스 내부의 데이터를 보겠다는거고
캡슐화를 위반하는 거라고 생각함.
또한 그 클래스를 사용하는 소스 코드도 클래스 내부 자료구조에 의존하기 때문에
의존성 또한 이상해짐
(왜 사용자 코드가 순전히 도구/툴인 하위 클래스(클래스 내부 자료구조)에 의존성을 가져야 되는가?)
즉, 사용자는 클래스의 메소드를 통해 클래스를 조작해야 하고, 사용자가 클래스 내부 자료구조를 보는 순간 의존성 및 캡슐화가 깨진다.
그러면 클래스 변수들을 퍼블릭으로 가면 되지 않느냐 -> struct로 단순화하는게 더 낫지 않나?
그런 느낌임
관련된 스택오버플로 찾아봐도 비슷한 의견들이 많은걸로 보아, 많은 개발자가 이런 생각을 공유하고 있는것 같다.
적극 동의하는 바입니다 개인적으로는 구체적인 멤버 변수가 아닌 가상의 입출력 결과물에 대한 게터세터만 쓰는게 맞는 것 같아요 (프로퍼티 개념으로)
추상적인 자료(사용자 중심)에 대한 게터세터는 ㅇㅈ
동감
뭔말인지 모르겠다 추상적 자료, 가상의 입출력 결과물이 뭐지 - dc App
ㄹㅇ 필드는 프라이빗으로 관리해야돼! 하니까 눈가리고 아웅식으로 지키고 퍼블릭처럼 쓰는꼴 - dc App
ㅇㅈ
js 겟터 셋터같은건 어캐생각함?
스크립트 언어 뻐킹
호엥
뻒예아 - dc App
Get,Set 할 때 다른 변수 변하게 하는 용도가 첫번째고 다른 이유로는 디버깅 편하다던데 2번째껀 잘 모르겠음
그걸 직접 사용자가 조작하는 순간 캡슐화랑 의존성 둘다 개똥망됨