Systems Programming in Rust ที่ทำอย่างถูกต้อง
Rust เป็นภาษาระบบที่รับประกันความปลอดภัยของหน่วยความจำโดยไม่ต้องใช้ garbage collector มันคือภาษาที่อยู่เบื้องหลังส่วนต่างๆ ของ Linux kernel เซิร์ฟเวอร์เว็บที่มีประสิทธิภาพสูง WebAssembly runtimes และ embedded firmware — ทุกที่ที่ความถูกต้องและความเร็วมีความสำคัญเท่าเทียมกัน หลักสูตรนี้ครอบคลุม Rust ตั้งแต่หลักการพื้นฐานจนถึง concurrency ขั้นสูง async I/O และงานระบบระดับต่ำ โดยอาศัยแบบจำลอง ownership ของภาษาจริง
สิ่งที่คุณจะได้เรียนรู้
คุณจะเริ่มต้นด้วย type system ของ Rust — ตัวแปร ประเภทข้อมูล strings slices vectors และ HashMaps — จากนั้นเข้าไปในกลไกที่ทำให้ Rust แตกต่าง: ownership borrowing และ lifetimes จากที่นั่นคุณจะใช้งานฟังก์ชันและ closures iterators generics และ trait bounds และ advanced pattern matching โมดูลปฏิบัติครอบคลุม asynchronous programming ด้วย Tokio การสร้าง CLI tools ด้วย clap web services ด้วย Axum การเข้าถึงฐานข้อมูลด้วย sqlx serialization ด้วย Serde gRPC services ด้วย tonic และการออกแบบ REST API ในระดับที่สูงขึ้น คุณจะเขียน macros ใช้ unsafe Rust อย่างมีจำนัด เรียกใช้โค้ดภายนอกผ่าน FFI คอมไพล์เป็น WebAssembly และทำงานกับระบบฝังตัว
เส้นทางการเรียนรู้
หลักสูตรสามสิบเก้าหลักสูตรครอบคลุมตั้งแต่ A1 ถึง C2 หลักสูตร A1 และ A2 กำหนดไวยากรณ์ โครงสร้างข้อมูลหลัก และการไหลของการควบคุม B1 เพิ่มเติมใน modules Cargo threads และ shared state ระดับ B2 เป็นบล็อกที่ใหญ่ที่สุด — สิบสี่หลักสูตรครอบคลุม async ecosystem frameworks ที่ใช้ในโลกจริง และรูปแบบการจัดระเบียบโครงการ C1 ลึกซึ้งเกี่ยวกับ lifetimes smart pointers macros unsafe code WebAssembly advanced web services แอปพลิเคชัน GUI ด้วย egui และการพัฒนาเกมด้วย Bevy หลักสูตรปิดท้ายที่ C2 ด้วย advanced type system — generics traits และ associated types — และ embedded Rust และความรู้พื้นฐานของการเขียนโปรแกรมระบบ
วิธีการทำงาน
แต่ละหลักสูตรแบ่งออกเป็นบทเรียนที่สั้นและเน้นเฉพาะที่ซึ่งคุณทำให้เสร็จในตัวแก้ไขโค้ดที่สร้างไว้พร้อมการตอบรับแบบเรียลไทม์ ครูสอน AI พร้อมใช้งานได้เมื่อใดก็ตามที่คุณติดขัด เพื่อให้คุณสามารถแก้ไขข้อผิดพลาดของ ownership และ lifetime annotations ตามที่คุณต้องการโดยไม่ต้องออกจากแอปพลิเคชัน