Cargo Structure

Cargo 패키지 구조 읽기

패키지는 배포 단위이고, 크레이트는 컴파일 단위이며, 모듈은 코드 조직과 공개 범위를 정합니다.

패키지 안에서 먼저 보는 위치

Cargo.toml

패키지 이름, 버전, 의존성을 선언하는 시작점입니다.

src/main.rs

실행 파일 크레이트가 시작되는 루트 파일입니다.

src/lib.rs

공유 로직을 노출하는 라이브러리 크레이트 루트입니다.

src/bin/

여러 실행 파일을 같은 패키지에 둘 때 쓰는 위치입니다.

이름이 가리키는 범위

package 배포되는 프로젝트 묶음

하나의 패키지 안에 여러 크레이트가 들어갈 수 있습니다.

crate 컴파일되는 단위

binary와 library는 각각 다른 크레이트 루트를 가집니다.

module 코드를 나누는 내부 구조

파일을 찾은 뒤 mod와 pub으로 공개 범위를 확인합니다.