record가 생성 코드를 줄여도 구성 요소가 가변이면 깊은 불변성까지 자동으로 생기지는 않습니다.
검증·정규화
title()·viewCount()
모든 구성 요소 값
구조화된 표현
참조 대상 변경은 별도 차단
핵심: 값 동등성과 읽기 전용 참조는 제공되지만 mutable 구성 요소는 생성 경계에서 snapshot으로 바꿉니다.