binding

변수 선언 판단 기준

let, mut, const, shadowing은 값 변경 방식과 이름의 의미 변경 여부로 고릅니다.

판단 기준

값 자체를 바꿀 필요가 있는가

let

기본은 불변으로 두고 변경이 필요할 때만 mut를 붙입니다.

mut

같은 바인딩의 값을 여러 번 바꾸는 의도를 명시합니다.

const

컴파일 시점 상수와 타입을 함께 고정합니다.

shadowing

같은 이름으로 의미나 타입을 새 단계로 다시 묶습니다.