CH7-5 · MODEL

불변 객체 설계의 성공과 실패 증거

입력 List를 복사하고 불변 List를 반환하므로 외부 변경이 first의 상태로 들어오지 않습니다.

성공 출력

관찰 가능한 결과

[read] / [read, code]

실패 경계

왜 실패하는가

입력 List를 복사하고 불변 List를 반환하므로 외부 변경이 first의 상태로 들어오지 않습니다.

선택 기준

코드에 남길 계약

불변성은 final의 개수가 아니라 객체 경계를 통과하는 모든 가변 참조를 통제했을 때 만들어집니다.

관찰 증거 불변성은 final의 개수가 아니라 객체 경계를 통과하는 모든 가변 참조를 통제했을 때 만들어집니다.