iT邦幫忙

鐵人檔案

2024 iThome 鐵人賽
回列表
Software Development

螃蟹幼幼班:Rust 入門指南 系列

本系列是初階的 Rust 學習歷程。
適合沒有接觸過 Rust 或強型別語言、低階語言、靜態語言的初階工程師,目標是理解 Rust 的寫法,搞懂每一行 code 背後做了什麼,以及了解 Rust 的整體設計,並在學習過程補充一些過往接觸程式語言的時候沒有那麼重視或忽略的觀念。
預期會有所有權完整的講解,以及遇到編譯錯誤要怎麼理解他的錯誤訊息和做修正。
會用盡量簡短的程式範例配合一些情境舉例以及做一些嘗試觀察 Rust 的行為。

鐵人鍊成 | 共 30 篇文章 | 2 人訂閱 訂閱系列文 RSS系列文
DAY 21

Day21 - 特徵

簡介 特徵(trait)是用來定義特定型別與其他型別共享的功能,也指定了這些型別要滿足的功能要有哪些,如上一篇提到當需要限縮泛型的型別的時候就很重要。而特徵界限...

2024-10-05 ‧ 由 blueye 分享
DAY 22

Day22 - 常見集合:向量

簡介 今天稍微喘口氣回頭看一下 Rust 除了內建的陣列和元組以外的集合型別。集合(collections)的特色在於可以包含數個數值組成,相對於內建的陣列和元...

2024-10-06 ‧ 由 blueye 分享
DAY 23

Day23 - 智慧指標:Box<T>

簡介 指標(pointer)是一個將變數儲存記憶體位址的通用概念。此位址指向一些其他資料。 Rust 最常見的指標是參考:以&amp;符號作為指示並借用它們指向...

2024-10-07 ‧ 由 blueye 分享
DAY 24

Day24 - Deref 與 Drop

看完基本的智慧指標 Box&lt;T&gt;,在看其他智慧指標之前,先來看看為什麼 Deref 和 Drop 特徵對智慧指標來說是重要的。 解參考運算子 實作 ...

2024-10-08 ‧ 由 blueye 分享
DAY 25

Day25 - 智慧指標 :Rc<T>

所有權的局限性 在 Rust 中,可以把所有權想像成「誰負責管理某個資料的生命週期」,也就是說當擁有某個數值的所有權,代表這個變數不論主動或被動,有義務把這個數...

2024-10-09 ‧ 由 blueye 分享
DAY 26

Day26 - 智慧指標:RefCell<T>

簡介 內部可變性(Interior mutability)是 Rust 中的一種設計模式,讓我們能改變不可變參考的值。之前就有提過 Rust 的編譯檢查是保守的...

2024-10-10 ‧ 由 blueye 分享
DAY 27

Day27 - 閉包

在 Rust 裡, 函數也是一等公民(first-class citizen),這代表函數也可以當成其他函數的參數和回傳值,所以可以支援一些 functiona...

2024-10-11 ‧ 由 blueye 分享
DAY 28

Day28 - 疊代器

簡介 疊代器(iterators)是遍歷序列中每個元素的一種抽象。 不同於傳統的索引訪問,疊代器通過定義好的疊代器接口逐一訪問序列中的元素,不支援隨機存取而是...

2024-10-12 ‧ 由 blueye 分享
DAY 29

Day29 - 巨集

簡介 巨集(macro)簡單地說就是用程式碼產生程式碼的方式,又稱為超程式設計(metaprogramming),目前我們也在很多地方使用過,比如輸出內容到終端...

2024-10-13 ‧ 由 blueye 分享
DAY 30

Day30 - 無懼並行

簡介 Rust 設計的目標除了安全性、效能以外,還有並發性。現代電腦普遍配備多核心處理器。為了充分利用這些額外的運算能力,讓程式可以同時執行多個任務,提升整體效...

2024-10-14 ‧ 由 blueye 分享