[Effective Java] 클래스와 멤버의 접근 권한을 최소화하라.


[Effective Java] 클래스와 멤버의 접근 권한을 최소화하라.

클래스와 멤버의 접근 권한을 최소화하라. 잘 설계된 컴포넌트는 모든 내부 구현을 완벽히 숨겨, 구현과 API를 깔끔히 분리한다. 오직 API를 통해서만 다른 컴포넌트와 소통하며 서로의 내부 동작 방식에는 전혀 개의치 않는다. 정보 은닉 혹은 캡슐화 개념 정보 은닉의 장점 시스템 개발 속도를 높인다. 여러 컴포넌트를 병렬로 개발할 수 있기에 시스템 관리 비용을 낮춘다. 각 컴포넌트를 더 빨리 파악하여 디버깅 가능, 다른 컴포넌트로 교체하는 부담도 적다. 성능 최적화에 도움을 준다. 소프트웨어 재사용성을 높인다. 외부에 거의 의존하지 않고 독자적으로 동작할 수 있는 컴포넌트라면 그 컴포넌트와 함께 개발되지 않는 낯선 환경에서도 유용하게 쓰일 가능성이 크다. 큰 시스템을 제작하는 난이도를 낮춰준다. 자바는 정보 은닉을 위해서 다양한 장치 제공 접근 제어 메커니즘으로 클래스, 인터페이스, 멤버의 접근성을 명시 기본 원칙 모든 클래스와 멤버의 접근성을 가능한 한 좁혀야 한다. 즉, 소프트웨어...


#effectivejava #이펙티브자바 #자바 #정보은닉 #캡슐화 #클래스

원문링크 : [Effective Java] 클래스와 멤버의 접근 권한을 최소화하라.