Kiến thức cơ bản về module
Thuộc phần Lập trình hướng đối tượng trong hành trình Rust của Coddy. Bài học 8 trên 61.
Khi chương trình Rust phát triển, việc giữ mọi thứ trong một tệp duy nhất sẽ trở nên bất tiện. Hệ thống module của Rust giúp bạn sắp xếp code bằng cách chuyển các struct và phần triển khai của chúng sang những tệp riêng.
Để tạo một module trong tệp riêng, bạn chỉ cần tạo một tệp mới với tên module mong muốn. Ví dụ, để tạo module player, bạn tạo một tệp có tên player.rs:
// player.rs
struct Player {
name: String,
score: u32,
}
impl Player {
fn new(name: String) -> Player {
Player { name, score: 0 }
}
}
Để sử dụng module này trong tệp chính, bạn khai báo nó bằng từ khóa mod. Điều này cho Rust biết cần tìm một tệp có tên đó:
// main.rs
mod player;
fn main() {
// Giờ chúng ta có thể truy cập các mục trong module player
}
Khai báo mod player; yêu cầu Rust tìm và đưa nội dung của player.rs vào chương trình. Bạn có thể hình dung đây là cách liên kết code trong tệp đó với chương trình của bạn. Tên module phải khớp chính xác với tên tệp (không có phần mở rộng .rs).
Cách tách này giúp nhóm các đoạn code liên quan lại với nhau. Phần định nghĩa struct và tất cả phương thức của nó nằm trong một tệp riêng, còn main.rs tập trung vào điểm vào của chương trình. Trong bài học tiếp theo, bạn sẽ học cách truy cập các mục đã đặt trong module.
Tự làm thử
Bài học này không có thử thách code.
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Lập trình hướng đối tượng
1Phương thức và hành vi
Nhập môn khối triển khaiTham số selfPhương thức có thể thay đổiHàm liên kếtNhiều khối triển khaiNối chuỗi phương thứcÔn tập: thao tác với hình chữ nhật4Dự án: Thú cưng ảo
Định nghĩa thú cưngCho thú cưng ăn7Các trait tiêu chuẩn
Trait DebugTrait DisplayClone và CopyCác trait so sánh bằngÔn tập: Điểm có thể in ra2Tính đóng gói và module
Kiến thức cơ bản về moduleTừ khóa publicTrường riêng tưHàm lấy giá trịHàm thiết lập giá trịÔn tập: tủ khóa an toàn5Kiểu tổng quát
Cấu trúc tổng quátPhương thức tổng quátNhiều kiểu tổng quátHàm tổng quátÔn tập: điểm tọa độTự luyện tập: Trình biên dịch Rust online