[Rust 入門 02] Hello Rust

[Rust 入門 02] Hello Rust

建立 Rust 專案

這篇學到的事:

本篇照著 官方文件 的說明件建構第一隻小程式

  1. 使用 Cargo 指令產生新專案
  2. 加入相依套件

產生新專案

首先我們要先用 Cargo 產生一個新的專案。請在您的終端機執行:

cargo new hello-rust

資料夾架構

執行完產生新專案的指令後會產生一個新的目錄叫作 hello-rust 並包含以下檔案:

hello-rust
|- Cargo.toml
|- src
 |- main.rs
  • Cargo.toml 是 Rust 的 manifest 檔案,保存專案 metadata 與相依套件資訊
  • src/main.rs 編寫程式碼的地方

Hello, world!

將終端機切到剛剛建立的 hello-rust 目錄下執行 cargo run
應該就可以在終端機上看到 Hello, world!

加入相依套件

我們剛剛已經踏出第一步,印出 Hello, world! 了
接著為我們的應用程式加上相依套件吧!可以在 Rust 的套件倉儲 crates.io 找到各式各樣的函式庫
在 Rust 中,稱套件為「crates」,也就是在雜貨店常見的木板箱
在這個專案中,我們講使用一個叫作「ferris-says」的 crate,可以在 crates.io 查看詳細說明
打開你喜愛的程式編輯器,然後在 Cargo.toml 中加入

[dependencies]
ferris-says = "0.1"

這樣我們就能執行 cargo build,Cargo 會幫我們下載我們的相依套件。
執行完此命令後產生了一個新的檔案「Cargo.lock」
這個檔案會記錄我們本地端使用的相依套件確切版本,有點 npm 的味道

執行

要使用此相依套件,我們可以開啟 main.rs,移除所有的程式碼(這些只是範例而已)然後加上這行:

use ferris_says::say;

這行表示我們現在可以使用 ferris-says crate 匯出的 say 函式,有點 javascript 中解構運算的味道;又或是 pyhton 中引用套件方法的既視感

一支小小的 Rust 應用程式

現在讓我們來用新的相依套件寫一支小小的應用程式。在 main.rs 新增以下程式碼:

use ferris_says::say; // from the previous step
use std::io::{stdout, BufWriter};
fn main() {
 let stdout = stdout();
 let out = b"Hello fellow Rustaceans!";
 let width = 24;
 let mut writer = BufWriter::new(stdout.lock());
 say(out, width, &mut writer).unwrap();
}

儲存後就輸入 cargo run 來執行剛剛的應用程式
如果一切正常,應該可以在螢幕上看到可愛的吉祥物 Ferris 跟你 say Hello
helloRustFreeis)

下一步

在這一章節我們先建立了基本的 Rust 開發環境
接下來會照著官網中 學習 Rust 中的「Rust 程式設計語言」或是在論壇上會簡稱為「這本書」來繼續旅程

它將從基礎概念開始帶給您這門語言的概觀。您將會在閱讀本書的過程中寫一些專案,並在最後扎實地掌握這門語言。
就讓我們繼續學習 Rust,成為一個「Rustaceans」(許多 Rust 程式設計師會自稱「Rustaceans」,因為這和「crustacean」相似)

留言