Học Rust bằng ví dụ
Rust là một ngôn ngữ lập trình hệ thống hiện đại tập trung vào tính an toàn, tốc độ và tính đồng thời. Nó đạt đươc các tiêu chí này bằng cách làm bộ nhớ trở nên an toàn mà không sử dụng đến garbage collection (bộ thu gom rác).
Đây là bản dịch tiếng Việt của Rust by Example (RBE), một tập các ví dụ minh họa cho các khái niệm và thư viện tiêu chuẩn của Rust. Để giữ được tính đúng đắn về mặt thuật ngữ, xuyên suốt nội dung của toàn bộ bản dịch này, sẽ có nhiều thuật ngữ được giữ nguyên dưới dạng tiếng Anh (có kèm theo diễn giải bằng tiếng Việt). Để hiểu thêm về những ví dụ này, đừng quên cài đặt ngôn ngữ Rust và xem tài liệu chính thức. Thêm vào đó, nếu bạn tò mò, bạn cũng có thể kiểm tra mã nguồn của trang web này hoặc mã nguồn của bản gốc tiếng Anh.
Nào, chúng ta cùng bắt đầu!
-
Hello World - Bắt đầu với chương trình Hello World truyền thống.
-
Primitives - Học về số nguyên có dấu, số nguyên không dấu và các kiểu dữ liệu nguyên thủy khác.
-
Custom Types -
struct
vàenum
. -
Variable Bindings - Học về mutable bindings, scope và shadowing.
-
Types - Học về cách thay đổi và định nghĩa các kiểu dữ liệu.
-
Flow of Control -
if
/else
,for
, and các luồng điều khiển khác. -
Functions - Học về Methods, Closures và High Order Functions.
-
Modules - Tổ chức mã code của bạn bằng cách sử dụng các modules.
-
Crates - Một crate là một đơn vị biên dịch trong Rust. Học về cách tạo library (thư viện).
-
Cargo - Xem qua một số tính năng cơ bản của Cargo - công cụ quản lý các package Rust chính thức.
-
Attributes - Attribute (Thuộc tính) là metadata (siêu dữ liệu) được áp dụng cho một số module, crate hoặc item.
-
Generics - Tìm hiểu về cách viết một hàm hoặc kiểu dữ liệu có khả năng hoạt động với nhiều loại đối số.
-
Scoping rules - Scope (Phạm vi) đóng một phần quan trọng trong cái khái niệm về ownership (quyền sở hữu), borrowing (mượn quyền) và lifetimes (vòng đời).
-
Traits - Một trait là một tập các methods được xác định cho một kiểu không xác định (unknown type):
Self
-
Error handling - Học cách Rust xử lý lỗi.
-
Std library types - Học về một vài custom types (kiểu dữ liệu tùy chỉnh) được cung cấp bởi
std
library. -
Std misc - Học thêm về một vài kiểu dữ liệu tùy chỉnh cho việc xử lý tệp (file) và luồng (threads).
-
Testing - Tất cả các loại thử nghiệm chương trình trong Rust.
-
Meta - Documentation (Tài liệu) và Benchmarking (Đo điểm chuẩn).