Day 1:認識 Rust
學習目標
- 了解 Rust 是什麼、來自哪裡
- 知道 Rust 的核心賣點(安全、效能、並發)
- 能比較 Rust 與其他語言的不同
今日重點
Rust 是什麼?
- Mozilla 開發的**系統程式語言**
- 注重**安全性、效能、並發**
- 沒有垃圾回收(GC)— 用所有權系統在編譯期管理記憶體
- 適合:系統程式、WebAssembly、CLI 工具、遊戲引擎、嵌入式
為什麼學 Rust?
| 優勢 | 說明 |
|---|---|
| 記憶體安全 | 編譯時保證無悬垂指標 |
| 零成本抽象 | 高階語法,底層效能 |
| 並發安全 | 無資料競爭 |
| 豐富生態 | Cargo 套件管理 |
| 跨平台 | Linux、macOS、Windows、WebAssembly |
Rust vs 其他語言
| 語言 | 記憶體管理 | 並發模型 | 適用場景 |
|---|---|---|---|
| Rust | 所有權系統 | 型別安全並發 | 系統程式、效能關鍵 |
| C++ | 手動管理 | 執行緒 | 系統程式、遊戲引擎 |
| Go | 垃圾回收 | Goroutine | 伺服器、微服務 |
| Python | 垃圾回收 | GIL | 腳本、數據科學 |
練習
- 用一段話向別人解釋「Rust 最重要的三個特色」。
- 查詢 Rust 是怎麼處理「沒有 GC 卻又安全」這件矛盾的事情,答案:所有權系統(第 3 週會深入)。
自我檢查
- 能說出 Rust 的 3 個核心特色
- 知道 Rust 用什麼取代垃圾回收
- 能分辨 Rust 跟 C++ / Go 的差異