컴파일 시 크기를 알기 어려운 재귀 구조인지 봅니다.
Heap Pointer
Box<T> 선택 체크리스트
Box<T>는 소유권을 유지하면서 값을 힙으로 옮겨 스택의 크기 문제와 재귀 타입 표현 문제를 단순하게 만듭니다.
소유권은 하나, 위치는 힙
공유가 아니라 단일 소유 이동이면 Box가 충분합니다.
큰 값을 스택에서 자주 옮기지 않아도 되는지 판단합니다.
dyn Trait를 담아 호출 경계를 만들 필요가 있는지 봅니다.
판단 기준: 값의 크기 고정, 큰 데이터 이동 비용 감소, 트레이트 객체 보관처럼 포인터 경계가 필요한 상황인지 확인합니다.