Rust 학습 로드맵
1장: 시작하기
- 1.1 설치하기
- Rust 설치 방법
- 설치 확인
- 업데이트와 제거
2장: 추리 게임 튜토리얼
- 사용자 입력 처리하기
- rand 크레이트 활용하기
- 반복문과 패턴 매칭
- 에러 처리와 타입 변환
3장: 일반적인 프로그래밍 개념
- 변수와 가변성
- 데이터 타입
- 함수
- 주석과 문서화
- 제어 흐름
4장: 소유권 이해하기
- 소유권의 기본 개념
- 소유권 규칙
- 변수의 스코프
- 가변 참조와 불변 참조
- 슬라이스로 데이터 참조하기
- Copy 트레이트와 Drop 트레이트
5장: 구조체
- 구조체 정의와 인스턴스 생성
- 필드 초기화 축약법
- 구조체 갱신 문법
- 튜플 구조체
- 메서드 문법
- 연관 함수
7장: 모듈 시스템
- 패키지와 크레이트
- 모듈 정의
- 경로를 사용한 참조
- pub 키워드로 공개 범위 제어
- use 키워드
- 모듈 분리
8장: 컬렉션
9장: 에러 처리
- panic! 매크로
- Result<T, E>
- 에러 전파
- 사용자 정의 에러 타입
10장: 제네릭, 트레잇, 라이프타임
11장: 테스팅
- 테스트 작성법
- 단위 테스트
- 통합 테스트
- 테스트 구성
- 테스트 실행 제어
12장: I/O 프로젝트
- 커맨드라인 인수 받기
- 파일 읽기
- 모듈성과 에러 처리
- TDD(테스트 주도 개발)
13장: 함수형 프로그래밍 기능
14장: Cargo와 Crates.io
- 릴리즈 프로필
- 문서화
- 워크스페이스
- cargo install
- 사용자 정의 명령어
15장: 스마트 포인터
- Box
- Deref 트레잇
- Drop 트레잇
- Rc
16장: 동시성
- thread
- 메시지 패싱
- Sync와 Send 트레잇
17장: 객체지향 프로그래밍
18장: 패턴과 매칭
- 패턴 매칭의 모든 위치
- 제어 흐름
- 함수 매개변수
- let 구문
- for 루프
19장: 고급 기능
- Unsafe Rust
- 고급 트레잇
- 고급 타입
- 고급 함수와 클로저
- 매크로
20장: 웹서버 프로젝트
- TCP 연결 수신
- HTTP 요청 처리
- 스레드풀 구현
- 정상적인 종료와 정리
부록
- A: 키워드
- B: 연산자와 기호
- C: 파생 가능한 트레잇
- D: 유용한 개발 도구
- E: Rust 에디션
- F: 번역본
- G: Rust 개발 과정
참조: https://doc.rust-lang.org/book/