今天,我們將通過實際操作,體驗完整的Rust開發流程:從建立專案到使用RustRover進行開發,最後將成果上傳至GitHub。
首先,打開終端機,使用Cargo創建一個新的Rust專案:
cargo new rust_guessing_game
cd rust_guessing_game
這將建立一個名為rust_guessing_game
的新目錄,包含以下結構:
rust_guessing_game/
├── Cargo.toml
└── src/
└── main.rs
Cargo.toml
是專案的設定文件,而src/main.rs
是主程式文件。
首先,我們需要新增 rand
crate 作為依賴。打開 Cargo.toml
文件,在 [dependencies]
部分新增以下行:
[
dependencies
]
rand = "0.8.5"
保存文件後,Cargo 會自動下載並編譯 rand
crate。
現在,讓我們在src/main.rs
中新增一個簡單的猜數字遊戲:
use std::io;
use std::cmp::Ordering;
use rand::Rng;
fn main() {
println!("猜數字遊戲!");
let secret_number = rand::thread_rng().gen_range(1..101);
loop {
println!("請輸入你的猜測:");
let mut guess = String::new();
io::stdin()
.read_line(&mut guess)
.expect("讀取行失敗");
let guess: u32 = match guess.trim().parse() {
Ok(num) => num,
Err(_) => continue,
};
println!("你猜的數字是:{}", guess);
match guess.cmp(&secret_number) {
Ordering::Less => println!("太小了!"),
Ordering::Greater => println!("太大了!"),
Ordering::Equal => {
println!("你贏了!");
break;
}
}
}
}
在RustRover的內建終端中執行程式:
cargo run
增加一個簡單的測試。在main.rs
的末尾添加:
#[cfg(test)]
mod tests {
#[test]
fn it_works() {
assert_eq!(2 + 2, 4);
}
}
執行測試:
cargo test
在RustRover中,前往 "VCS" -> "Enable Version Control Integration",選擇Git。
建立一個.gitignore
文件,添加以下內容:
/target
Cargo.lock
提交變更:右鍵點擊項目 -> Git -> Commit Directory。
git remote add origin https://github.com/你的用戶名/rust_guessing_game.git
git branch -M main
git push -u origin main
現在,可以在GitHub上查看剛剛完成的專案了~