用 rustlings 來練習 Rust 語言

閱讀時間約 3 分鐘

對於剛學習 Rust 的人來說,最一開始不是看 Youtube 的影片或是跟著 Rust 官方手冊 The Book 學習,這邊來推薦一個練習 Rust 的專案,名為 rustlings

rustlings 包含著一些簡單的題目,來讓你更習慣閱讀或編寫 Rust 程式碼。該專案會在每道題目上給予提示來幫助你完成題目,並在你完成後提供校對的機制。

安裝

在安裝 rustlings 前,必須要先安裝 Rust,到 Installing Rust 並根據自己的作業系統下載。

因為我的環境是 WSL,所以我會依循 Mac/Linux 的步驟來進行下載:

curl -L https://raw.githubusercontent.com/rust-lang/rustlings/main/install.sh | bash -s rustlings/
如果你是 MacOS 使用者:要執行 xcode-select --install
如果你是 Linux 使用者:要執行 sudo apt install gcc

Windows 的下載方式可以參考 Getting Started - Windows。當然你也直接去 clone 專案都可以。

開始使用

整個專案的目的很簡單,它會提供一些有問題的程式碼等待你來解決,這些都放在專案下的 exercises/ 資料夾裡,完成後就會有檢查機制來幫你檢查。

這邊來介紹第一個監看模式( watch ),就是當 exercises/ 裡的程式碼被更改時,就會自動去驗證程式碼是否正確。輸入以下指令來進入監看模式:

rustlings watch
rustlings watch mode

rustlings watch mode

這邊可以看到現在第一個要修改的題目是 exercises/intro/intro1.rs,在每一題改完並且測試沒問題後,就必須要把程式碼裡的 I AM NOT DONE 這句話移除,否則它是不會跳下一個題目和提示的。

在這個模式下輸入 help 指令來獲得其餘的幫助,例如輸入 hint 可以獲得當前要更改的程式碼的提示、輸入 quit 可以退出目前的模式。

當然你也可以不要進入監看模式就可以驗證你的程式碼,輸入以下指令來驗證:

rustlings verify

或是獲得下一題的提示:

rustlings hint next

實作

這邊來簡單實作一題,因為 intro1 只要你移除 I AM NOT DONE 便可以到下一題,所以這邊我們來直接做第二題 intro2

// intro2.rs
//
// Make the code print a greeting to the world.
//
// Execute `rustlings hint intro2` or use the `hint` watch subcommand for a
// hint.

// I AM NOT DONE

fn main() {
println!("Hello {}!");
}

當然不用提示我們都知道問題在哪裡,{} 後面需要再放一個字串來補完整句:

fn main() {
println!("Hello {}!", "World");
}

完成後存檔你就會看到監看模式下有一些不一樣:

rustlings intro2 OK

rustlings intro2 OK

包含著測試的結果、進度條、輸出還有你必須移除 I AM NOT DONE 才能跳下一題。

結語

有了這個小工具,可以讓你在讀完官方手冊後有個地方可以複習。

Github

2會員
4內容數
簡單的了解一個關於程式相關的主題
留言0
查看全部
發表第一個留言支持創作者!