상태 정의
멤버 변수는 클래스 책임을 수행하는 데 필요한 최소 데이터만 둔다.
파생 캐시 점검멤버는 클래스 안에 들어 있다는 이유만으로 책임이 선명해지지 않는다. 상태를 바꾸는 함수, 관찰만 하는 함수, 클래스 전체 규칙을 지키는 함수를 분리해 책임을 읽는다.
멤버 변수는 클래스 책임을 수행하는 데 필요한 최소 데이터만 둔다.
파생 캐시 점검상태를 바꾸는 함수는 전제 조건, 실패 조건, 변경 후 불변식을 명확히 한다.
명령 성격읽기 전용 함수는 const를 붙여 호출자가 부작용 없음을 믿게 한다.
논리적 conststatic 멤버는 객체 상태가 아니라 타입 단위 상태인지 확인한다.
동시성 고려