- Được thiết kế theo cách học từng khái niệm cốt lõi của Rust, mỗi lần một nội dung, thông qua thực hành
- Có thể học cú pháp, hệ thống kiểu, thư viện chuẩn và hệ sinh thái
- Không cần có kiến thức trước về Rust, nhưng cần có kiến thức cơ bản về một ngôn ngữ lập trình khác
- Cũng không cần có kiến thức trước về lập trình hệ thống hay quản lý bộ nhớ
- Có thể bắt đầu từ đầu và từng bước nhỏ xây dựng kiến thức về Rust
- Khi hoàn thành khóa học, bạn sẽ giải khoảng 100 bài tập thực hành và có được sự tự tin để xử lý các dự án Rust quy mô nhỏ đến trung bình
Phương pháp luận
- Khóa học này dựa trên nguyên tắc "học qua thực hành (Learn By Doing)"
- Được thiết kế theo hướng tương tác và tập trung vào thực hành
- Được thiết kế để triển khai trong môi trường lớp học trong 4 ngày
- Mỗi học viên học theo tốc độ của riêng mình, với một giảng viên giàu kinh nghiệm hướng dẫn và trả lời câu hỏi
- Bạn cũng có thể tự học theo khóa này, nhưng nên có sự hỗ trợ từ bạn bè hoặc người hướng dẫn
- Lời giải cho tất cả bài tập có thể được tìm thấy trong nhánh solution của kho lưu trữ GitHub
Cấu trúc
- Ở bên trái màn hình, khóa học được chia thành nhiều phần
- Mỗi phần giới thiệu một khái niệm hoặc tính năng mới của ngôn ngữ Rust
- Để kiểm tra mức độ hiểu, mỗi phần đều có bài tập cần giải
- Các bài tập có thể được tìm thấy trong kho lưu trữ GitHub đi kèm
- Trước khi bắt đầu khóa học, bạn cần clone kho lưu trữ về máy cục bộ
- Nếu đã thiết lập khóa SSH:
git clone git@github.com:mainmatter/100-exercises-to-learn-rust.git
- Nếu sử dụng URL HTTPS:
git clone https://github.com/mainmatter/100-exercises-to-learn-rust.git
- Nên làm việc trên các nhánh để dễ theo dõi tiến độ và lấy cập nhật từ kho chính khi cần
- Tất cả bài tập nằm trong thư mục exercises
- Mỗi bài tập được tổ chức dưới dạng một gói Rust
- Gói này bao gồm chính bài tập, hướng dẫn về việc cần làm (
src/lib.rs) và một bộ kiểm thử để tự động xác minh lời giải
Giới thiệu tác giả
- Khóa học này được viết bởi Luca Palmieri, cố vấn kỹ thuật cấp cao tại Mainmatter
- Luca đã sử dụng Rust từ năm 2018 và từng làm việc tại TrueLayer và AWS
- Anh là tác giả của "Zero to Production in Rust", một tài nguyên thiết yếu để học cách xây dựng ứng dụng backend bằng Rust
- Anh cũng là tác giả và người bảo trì của nhiều dự án Rust mã nguồn mở như cargo-chef, Pavex và wiremock
1 bình luận
Ý kiến trên Hacker News
Tóm tắt các bình luận trên Hacker News
Đề xuất Rustlings
Zero to Production in Rust
Đề xuất nhập môn Rust
Mẹo và thủ thuật Rust
Xin ý kiến từ người có kinh nghiệm ngôn ngữ khác
Blog về phương pháp học
Vấn đề trừu tượng hóa của Rust
Khó tìm việc Rust
So sánh với Rustlings
Lời khen dành cho tác giả