GN⁺: Rust 학습을 위한 100가지 연습 문제
(rust-exercises.com)- Rust의 핵심 개념을 한번에 하나씩 실습을 통해 학습하는 방식으로 구성
- 문법, 타입 시스템, 표준 라이브러리 및 생태계를 배울 수 있음
- Rust에 대한 사전 지식은 필요하지 않지만, 다른 프로그래밍 언어에 대한 기본 지식은 필요함
- 시스템 프로그래밍이나 메모리 관리에 대한 사전 지식도 필요하지 않음
- 처음부터 시작하여 작은 단계로 Rust 지식을 쌓아나갈 수 있음
- 과정이 끝나면 약 100개의 연습 문제를 해결하여 소규모에서 중규모의 Rust 프로젝트를 다룰 수 있는 자신감을 가질 수 있음
방법론
- 이 과정은 "실습을 통한 학습(Learn By Doing)" 원칙에 기반함
- 상호작용적이고 실습 중심으로 설계
- 4일 동안 교실 환경에서 진행되도록 설계됨
- 각 참가자는 자신의 속도에 맞춰 학습하며, 경험 많은 강사가 안내하고 질문에 답변하는 형식
- 혼자서도 과정을 따라갈 수 있지만, 친구나 멘토의 도움을 받는 것을 추천함
- 모든 연습 문제의 해답은 GitHub 저장소의 솔루션 브랜치에서 찾을 수 있음
구조
- 화면 왼쪽에 과정이 섹션으로 나뉘어 있음
- 각 섹션은 Rust 언어의 새로운 개념이나 기능을 소개함
- 이해도를 확인하기 위해 각 섹션에는 해결해야 할 연습 문제가 있음
- 연습 문제는 동반 GitHub 저장소에서 찾을 수 있음
- 과정을 시작하기 전에 저장소를 로컬 머신에 클론해야 함
- SSH 키가 설정된 경우:
git clone git@github.com:mainmatter/100-exercises-to-learn-rust.git
- HTTPS URL을 사용하는 경우:
git clone https://github.com/mainmatter/100-exercises-to-learn-rust.git
- 진행 상황을 쉽게 추적하고 필요 시 메인 저장소에서 업데이트를 가져오기 위해 브랜치에서 작업하는 것을 추천함
- 모든 연습 문제는 exercises 폴더에 위치함
- 각 연습 문제는 Rust 패키지로 구성됨
- 패키지에는 연습 문제 자체, 수행할 작업에 대한 지침(src/lib.rs) 및 솔루션을 자동으로 확인하는 테스트 스위트가 포함됨
저자 소개
- 이 과정은 Mainmatter의 수석 엔지니어링 컨설턴트인 Luca Palmieri가 작성함
- Luca는 2018년부터 Rust를 사용해왔으며, TrueLayer와 AWS에서 일함
- "Zero to Production in Rust"의 저자로, Rust로 백엔드 애플리케이션을 구축하는 방법을 배우는 데 필수적인 자원임
- cargo-chef, Pavex 및 wiremock을 포함한 다양한 오픈 소스 Rust 프로젝트의 저자이자 유지 관리자임
Hacker News 의견
해커뉴스 댓글 모음 요약
-
Rustlings 추천
- Rustlings라는 유사한 학습 리소스를 언급함. 파일에 있는 todo 문장을 수정하여 코드가 컴파일되고 모든 테스트를 통과하게 만드는 방식으로, 상호작용적인 학습 방법임. Rustlings 링크
-
Zero to Production in Rust
- 이 연습 문제 세트는 "Zero to Production in Rust"라는 책의 저자가 만든 것임. 이 책은 인간 두개골에 게가 있는 표지로 유명함. Zero to Production 링크
-
Rust 입문 추천
- Rust 지식이 기본적인 수준인 섹션을 훑어보았고, 낭비 없는 스타일이 마음에 듦. 30분 정도 사용해본 후, 이 리소스가 Rust 입문에 최고의 추천서가 될 수 있다고 생각함. 같은 저자가 만든 것임을 알게 됨.
-
Rust 팁과 트릭
- Rust를 더 깊이 파고들고 싶은 사람들을 위해 Rust 팁과 트릭 목록을 유지하고 있음. Rust 팁과 트릭 링크
-
다른 언어 경험자 의견 요청
- 인기 있는 프로그래밍 언어에 익숙하고 이 연습 문제를 완료한 사람이 이 리소스가 얼마나 유용한지에 대한 의견을 공유해주길 바람. Java, Python, JS, C++ 경험 있음.
-
학습 방법 블로그
- "Learn by doing" 접근법에 대해 블로그에 작성함. 블로그 링크
-
Rust의 추상화 문제
- Rust 코드에서 추상화가 종종 누출됨. 소유권 기능 때문에 구현 세부 사항이 노출되거나 강요됨.
-
Rust 직업 찾기 어려움
- 개인적으로 Rust를 사용해왔지만, 해고된 후 Rust를 사용할 수 있는 직업을 찾기 어려움. Rust를 사용하는 직업이 많지 않음.
-
Rustlings과 비교
- Rustlings와 이 리소스를 비교한 사람의 의견을 궁금해함. Rustlings에 매우 만족했지만, 이 리소스를 완료할 가치가 있는지 궁금함.
-
저자에게 찬사
- 저자와 유지 관리자에게 찬사를 보냄. 원한다면 쉽게 수익화할 수 있었을 텐데 무료로 공유함. 저자 링크