rand dependency

임의의 숫자는 코드와 의존성 관리를 함께 요구한다

추리 게임에서 `rand`를 쓰려면 `Cargo.toml`에 의존성을 선언하고, Cargo가 가져온 실제 버전은 `Cargo.lock`으로 고정합니다.

1

의존성 선언

프로젝트가 `rand` 크레이트를 필요로 한다고 Cargo에 알립니다.

2

레지스트리 조회

Cargo가 crates.io 인덱스에서 호환 가능한 버전과 하위 의존성을 찾습니다.

3

잠금 파일 기록

선택된 정확한 버전은 `Cargo.lock`에 남아 재현 가능한 빌드를 돕습니다.

4

Rng 트레이트 사용

`use rand::Rng;`으로 `gen_range` 메서드를 호출할 준비를 합니다.

왜 Cargo.lock을 직접 고치지 않을까

`Cargo.toml`은 원하는 범위를 선언하고, `Cargo.lock`은 실제로 선택된 버전을 기록합니다. 업데이트는 `cargo update`처럼 Cargo 명령으로 수행하는 편이 안전합니다.