지침: Rust 스타일
이 문서는 Rust 프로젝트의 코드 구조와 작성 원칙에 관한 가이드라인을 제시합니다.
프로젝트 구조에서는 mod.rs를 루트 모듈로 선호하고, 디렉터리 루트 모듈은 재수출만 하며, 프렐류드(prelude) 모듈도 재수출 용도로만 사용하도록 권장합니다. 또한, #[path] 속성 사용을 피하고 표준 모듈 탐색 규칙을 따르며, API는 파일 레이아웃의 부분집합이어야 한다고 설명합니다. 가시성은 모듈 범위, 크레이트 범위, 공개 범위로 단순화할 것을 권장합니다.
파일 구조에서는 비공개 임포트는 공개 임포트보다 먼저 배치하고, 임포트는 필요한 항목만 개별적으로 하며, 모듈 내 핵심 아이템을 최우선으로 배치하는 등의 규칙을 제시합니다. 또한, 타입 선언 후 연관 함수, 연관 함수 후 트레이트 구현 순으로 정렬하고, 호출자 함수가 피호출자 함수보다 먼저 위치해야 한다고 안내합니다.
함수 구조에서는 관련 로직을 그룹화하고, 출력 변수를 함수 시작 부분에 선언하며, 비즈니스 로직을 명확히 드러내는 블록 구조를 유지할 것을 권장합니다. 순수 함수 표현식과 가변 상태 변경을 혼합하지 말고, 클로저 내 비즈니스 로직에 부작용이 없도록 하며, 부작용이 필요한 경우에는 명시적 반복문 사용을 권장합니다.
이 가이드라인은 코드를 읽는 사람의 이해와 유지보수를 돕기 위한 기술 문서 작성 원칙을 적용하여, 코드의 가독성과 예측 가능성을 높이고, 리팩토링과 협업의 효율성을 증진시키는 데 실용적 가치를 제공합니다.