Encapsulation vs Data Hiding
2방법 모두 OOP 의 특징이다
은닉화는 무단 엑세스로 부터 클래스 맴버를 보호하는데 집중을 한다. + 복잡도를 숨기면서 보안.
사실 캡슐화는 은닉화의 프로세스중 하나로 봐도 된다.
캡슐화는 클래스를 맴버화 메소드를 매핑하는데 집중을 한다. + 복잡도 숨기기를 위한 데이터 래핑.
캡슐화는 멤버들과 메소드를 싱글 유닛으로 래핑하는걸 중요시한다.
Ex 길이 각도 등의 멤버와 넓이함수 등 직사각형이란 클래스에 private default public protected 사용하여 래핑하면 복잡도는 낮아지고 유지보수는 쉬워진다.