inflearn logo

Rust Code Sạch: Thành ngữ và Mẫu thiết kế

Các mẫu thiết kế và phản mẫu khi viết mã Rust – khóa học 40 bài. Nội dung được giải thích theo mục lục của sách, từ generic, trait, iterator đến builder, observer, máy trạng thái, cũng như việc lạm dụng unsafe và clone.

2 học viên đang tham gia khóa học này

Độ khó Trung cấp trở lên

Thời gian Không giới hạn

Rust
Rust
Design Pattern
Design Pattern
rust-traits
rust-traits
generic
generic
macro
macro
Rust
Rust
Design Pattern
Design Pattern
rust-traits
rust-traits
generic
generic
macro
macro

Bạn sẽ nhận được điều này sau khi học.

  • Lựa chọn generic, Option, trait bound và trait object phù hợp với mục đích

  • Viết luồng xử lý ngắn gọn và an toàn bằng cách khớp mẫu, toán tử ?, closure và iterator.

  • Nắm vững các thành ngữ về RAII, truyền giá trị/tham chiếu, hàm khởi tạo, xử lý lỗi và xử lý trạng thái toàn cục.

  • Triển khai các macro khai báo và thủ tục, builder, giao diện fluent, observer, command và mẫu newtype

  • Thiết kế API thư viện và hoàn thiện bằng rustdoc cùng các bài kiểm thử

  • Tránh các anti-pattern như `unsafe`, `unwrap`, `clone` quá mức và tính đa hình của `Deref`.

[Bắt buộc đọc] Bạn phải có sách 《Rust Clean Code》 thì mới có thể tham gia khóa học này.
- Slide và video không có mã nguồn; khóa học được tiến hành theo cách mở mục mã tương ứng trong sách và làm theo.
- Nếu không mua sách, bạn sẽ không thể xem các mục mã và không thể theo kịp khóa học. Vui lòng mua sách trước khi tham gia khóa học.
- Sách không bao gồm trong khóa học này và bạn cần mua riêng.

📕 Hướng dẫn về giáo trình bắt buộc
- Tên sách: 《Mã nguồn sạch Rust》 (nguyên tác: Idiomatic Rust, Manning Publications, 2024)
- Tác giả: Brenden Matthews (Brenden Matthews)
- Người dịch: 윤인도 (do chính người chia sẻ kiến thức của khóa học này trực tiếp dịch)
- Nhà xuất bản: Công ty cổ phần J-Pub (www.jpub.kr)
- Phát hành: ngày 4 tháng 9 năm 2025 (bản 1, lần in 1)
- ISBN: 979-11-94587-32-3 (93000)
- Độ dài: khoảng 300 trang
- Giá sách được ghi ở bìa sau sách và sách không được bao gồm trong giá khóa học này.
- Vì khóa học này được tiến hành dựa trên chương, mục và số hiệu danh sách mã nguồn trong sách (ví dụ: danh sách 2.1), nên bạn không thể xem mã nguồn nếu không có sách.
- Nơi mua: Vui lòng tìm kiếm và mua sách tại các nhà sách (trực tuyến hoặc trực tiếp) bằng tên sách nêu trên hoặc ISBN.

Khóa học này tổng hợp các mẫu hình và phản mẫu trong 40 bài giảng, nhằm giúp bạn chuyển từ giai đoạn “có thể viết” code bằng Rust sang giai đoạn “viết theo phong cách Rust”.

Cấu trúc
- Phần 1 (1~12 bài): generic và Option, kiểu marker·phantom, trait và trait object, pattern matching, toán tử ?, closure, iterator
- Phần 2 (13~28 bài): RAII, truyền giá trị và tham chiếu, constructor, xử lý lỗi, trạng thái toàn cục, macro, các pattern Builder·Fluent·Observer·Command·Newtype, thiết kế thư viện, rustdoc, kiểm thử và gỡ lỗi
- Phần 3 (29~35 bài): const generic, trait Extension·Blanket·Marker, đối tượng tham chiếu, máy trạng thái trait, coroutine, macro thủ tục và prelude
- Phần 4 (36~40 bài): tính bất biến, Cow, unsafe, lạm dụng unwrap·Vec·clone, tính đa hình Deref và lạm dụng smart pointer

Đặc điểm khóa học
- Slide không đưa mã nguồn mà tập trung giải thích các khái niệm và cấu trúc. Bạn sẽ trực tiếp mở xem mã trong sách dựa theo trang tương ứng và số hiệu đoạn mã.
- Mỗi bài giảng tương ứng với mục và số hiệu đoạn mã trong sách, giúp bạn nhanh chóng tìm được vị trí ôn tập.

Tham khảo trước khi học
- Đây là khóa học đồng hành cùng 《Rust Clean Code》(Jpub), và bắt buộc phải mua sách. Nếu không có sách, bạn sẽ không thể xem danh sách mã.
- Giá không bao gồm sách.

Vì sao bạn cần khóa học này
Rust là một ngôn ngữ mà khoảng cách giữa mã có thể biên dịch được và mã dễ đọc là rất lớn. Cùng một vấn đề có thể được giải quyết bằng clone, bằng tham chiếu và vòng đời, hoặc có thể được viết bằng đối tượng trait hay generic. Khóa học này giúp bạn xây dựng tiêu chí để biết khi nào mỗi lựa chọn là phù hợp.

Những điều không được đề cập trong khóa học
- Giải thích về cú pháp nhập môn Rust và kiến thức cơ bản về quyền sở hữu
- Cách sử dụng runtime bất đồng bộ hoặc các framework web cụ thể
- Toàn bộ mã nguồn (chúng tôi sẽ hướng dẫn đến danh sách tương ứng trong sách)

Những việc có thể làm sau khi học
Sau khi hoàn thành khóa học, bạn có thể dựa trên căn cứ để đánh giá trong quá trình review code rằng “điều này có đúng tinh thần Rust không”. Bạn có thể chỉ áp dụng các mẫu như Builder và Newtype ở những nơi cần thiết, đồng thời đề xuất với nhóm các tiêu chí để giảm việc sử dụng unsafe và unwrap.

Khuyến nghị cho
những người này

Khóa học này dành cho ai?

  • Nhà phát triển biết cú pháp Rust nhưng không có tiêu chuẩn để viết “đúng chất Rust”

  • Nhà phát triển gặp bế tắc khi chuyển các mẫu từ C++ hoặc ngôn ngữ khác sang Rust

  • Nhà phát triển Rust đang muốn sắp xếp lại thiết kế của thư viện hoặc cơ sở mã của đội nhóm

Cần biết trước khi bắt đầu?

  • Giả định rằng bạn đã học qua cú pháp cơ bản của Rust (quyền sở hữu, struct, enum, trait).

Xin chào
Đây là devbull

Xác minh sự nghiệp

170

Học viên

15

Đánh giá

3

Trả lời

4.3

Xếp hạng

5

Các khóa học

Rustacean & Pythonista

Chương trình giảng dạy

Tất cả

40 bài giảng ∙ (6giờ 8phút)

Ngày đăng: 
Cập nhật lần cuối: 

Đánh giá

Chưa có đủ đánh giá.
Hãy trở thành tác giả của một đánh giá giúp mọi người!

Khóa học khác của devbull

Hãy khám phá các khóa học khác của giảng viên!

Khóa học tương tự

Khám phá các khóa học khác trong cùng lĩnh vực!

Giảm 25% cho thành viên mới

439.143 ₫

25%

585.523 ₫