![[Clean Code / 클린코드] - 6장 객체와 자료 구조 [Clean Code / 클린코드] - 6장 객체와 자료 구조](https://mblogthumb-phinf.pstatic.net/MjAyMDA5MTlfMTcg/MDAxNjAwNDg2MDYwNzk3.kOJUu6IQDE_wHaIeUqcEMbC0C94-eEVGDY6tvTBqRmgg.BwOPXmKKAx1jfQ0nZ4vIRAUf3APN4M99b4YSQz-CMk8g.JPEG.zzang9ha/%C5%AC%B8%B0%C4%DA%B5%E5_6%C0%E5_%B0%B4%C3%BC%BF%CD_%C0%DA%B7%E1%B1%B8%C1%B6.jpg?type=w2)
6장 객체와 자료 구조 변수를 비공개(private)로 정의하는 이유가 있다. 남들이 변수에 의존하지 않게 만들고 싶어서다.그렇다면 어째서 많은 프로그래머들이 조회(getter) 함수와 설정(setter) 함수를 당연히 공개(public)해 비공개 변수를 외부에 노출할까?자료 추상화다음 두 코드를 살펴보자.6-2)의 추상적인 클래스는 점이 직교좌표계를 사용하는지 극좌표계를 사용하는지 알 길이 없다. 그치만 인터페이스는 자료구조를 명백하게 표현한다. 6-2)는 클래스 메서드가 접근 정책을 강제한다. 좌표를 읽을 때는 각 값을 개별적으로 읽어야 하지만 좌표를 설정할 때는 두 값을 한꺼번에 설정해야 한다. 반면 6-1)은 개별적으로 좌표값을..........
원문링크 : [Clean Code / 클린코드] - 6장 객체와 자료 구조