개발로그

Item 15 - 클래스와 멤버의 접근 권한을 최소화하라

구현과 API를 분리하는 “정보 은닉”의 장점 시스템 개발 속도를 높인다. (여러 컴포넌트를 병렬로 개발할 수 있기 때문에) 시스템 관리 비용을 낮춘다. (컴퍼넌트를 더 빨리 파악할 수 있기 때문에) 성능 최적화에 도움을 준다. (최적화할 컴포넌트를 정한 후, 다른 컴포넌트에 영향끼치지 않고 해당 컴포넌트만 개선 가능하기 때문에) 소프...

Item 10 - equals는 일반 규약을 지켜 재정의하라

equals 메서드는 재정의하기 쉬워보이지만 곳곳에 함정이 도사리고 있다. 따라서 재정의가 필요하지 않은 경우에는 재정의하지 않는 것이 최선의 선택이다. equals 재정의를 추천하지 않는 상황 🙅 각 인스턴스가 본질적으로 고유한 경우 값을 표현하는게 아니라 동작하는 개체를 표현하는 클래스 일 때 ex) Thread 클래...