iT邦幫忙

鐵人檔案

2025 iThome 鐵人賽
回列表
Rust

Rust 30 天養成計畫:從零到 CLI 專案 系列

Rust 以安全、效能與現代化設計聞名,但同時也因「所有權」與「借用」的獨特機制讓初學者感到卻步。本系列將以 30 天為期,從零開始理解 Rust 的語法特色、所有權模型、錯誤處理方式與模組化設計。過程中不僅會學習到核心觀念,也會透過實作小專案累積經驗,包含數字遊戲、文字統計工具等,最終完成一個CLI 專案。

參賽天數 22 天 | 共 22 篇文章 | 0 人訂閱 訂閱系列文 RSS系列文
DAY 1

Day 1:Rust 語言的定位、安裝 rustup 與 Cargo 基本用法

今天的目標很簡單:搞清楚Rust是什麼、將其安裝好,然後跑出第一個程式。 1. Rust的定位Rust是一門強調效能與記憶體安全的系統程式語言。它的效能接近 C...

2025-09-15 ‧ 由 irishung121 分享
DAY 2

Day 2:變數、不可變性、可變性與 Shadowing

今天學習的是Rust的變數特性,包含不可變性、可變性(mut)以及遮蔽(shadowing)。這是Rust其中一個跟其他語言不一樣的部分,這個預設禁止的特色讓我...

2025-09-16 ‧ 由 irishung121 分享
DAY 3

Day 3:資料型別與型別推導

Rust是一個靜態型別語言,但同時支援型別推導。這代表在編譯時,所有變數的型別都是確定的,不能像Python那樣能隨意更改。 1. 整數型別 (Integer)...

2025-09-17 ‧ 由 irishung121 分享
DAY 4

Day 4:函數與表達式

Rust的函數用fn宣告,它強調「回傳值」與「表達式」的使用方式。此外,Rust也建議函數名稱使用 snake_case(底線小寫)。 1. 基本函數 fn m...

2025-09-18 ‧ 由 irishung121 分享
DAY 5

Day 5:控制流程

Rust 的控制流程包含條件判斷與各種迴圈,另外還有強大的 match 語法。Rust 特別強調「表達式」,因此在控制流程中也能直接把結果當值使用,這和 C/C...

2025-09-19 ‧ 由 irishung121 分享
DAY 6

Day 6:所有權 (Ownership)

Rust 為了避免記憶體錯誤,引入所有權 (ownership) 系統。 Rust 的所有權有三大規則: 每個值 (value) 在任一時間點只能有一個擁有者...

2025-09-20 ‧ 由 irishung121 分享
DAY 7

Day 7:借用 (Borrowing) 與參考 (References)

1. 為什麼需要借用昨天學到:一個變數的值被移動 (move) 後,原變數就不能再用。 fn main() { let s1 = String::fro...

2025-09-21 ‧ 由 irishung121 分享
DAY 8

Day 8:切片 (Slices)

1. 什麼是切片切片 (slice) 是一種不擁有資料所有權的型別,允許你借用集合(例如字串或陣列)中一段連續區間的內容。這和昨天學到的借用概念直接相關。 2....

2025-09-22 ‧ 由 irishung121 分享
DAY 9

Day 9:字串 (String) 與 &str 的差異

1. &str:字串切片&str 是字串切片,代表指向一段 UTF-8 編碼文字的參考,通常來自字串常值或 String 的借用,內容不可變。範...

2025-09-23 ‧ 由 irishung121 分享
DAY 10

Day 10:Tuple 與 Struct

1. Tuple(元組)元組是一組可以包含不同型別的資料集合,使用小括號 ()。可以用索引存取元素,或是解構 (destructuring)。 fn main(...

2025-09-24 ‧ 由 irishung121 分享