피드로 돌아가기
[Rust Guide] 7.3. Path Pt. 2 - Accessing Parent Modules and Pub on Structs and Enums
Dev.toDev.to
Backend

Rust의 Module Path 제어 및 Type Visibility 설계 전략

[Rust Guide] 7.3. Path Pt. 2 - Accessing Parent Modules and Pub on Structs and Enums

SomeB1oody2026년 4월 10일3beginner

Context

코드 규모 확장 시 모듈 간 의존성 관리와 내부 구현 캡슐화 필요성 증대. 무분별한 공개 접근으로 인한 내부 상태 오염 방지와 명확한 API 경계 설정이 요구되는 상황.

Technical Solution

  • super 키워드를 활용한 부모 모듈 경로 접근으로 상대적 참조 구조 설계
  • crate 루트 기준의 Absolute Path 설정을 통한 모듈 위치 독립적 호출 보장
  • pub 키워드 적용을 통한 Struct 및 Enum의 외부 공개 범위 제어
  • Struct 필드의 Default Private 설정을 통한 내부 데이터 무결성 보호 및 캡슐화 달성
  • Public Enum 내 Variant의 자동 공개 설정을 통한 타입 시스템의 사용성 최적화
  • Associated Function을 이용한 Constructor 패턴 설계로 객체 생성 로직의 중앙 집중화

- 모듈 계층 구조 변경 시 경로 유지보수를 위해 `super` 또는 `crate` 경로 활용 여부 검토 - Struct 설계 시 필드별 `pub` 적용 범위를 최소화하여 불변성 유지 전략 수립 - 외부 공개 API 설계 시 연관 함수(Associated Function)를 통한 팩토리 패턴 도입 검토

원문 읽기