iT邦幫忙

rust相關文章
共有 104 則文章
鐵人賽 自我挑戰組 DAY 17

技術 [Day 17] Rust Actix PART1

大家好~今天要帶大家來做一點專案,其實是因為筆者下禮拜要準備讀書會所以偷換一下主題。 Actix-Web 那麼就先介紹一下 actix-web,他是 Rust...

鐵人賽 Software Development DAY 17

技術 [Day 16] 知錯能改善莫大焉

今天我們來看看 Error handling 的部分吧!也就是如何處理異常和錯誤。異常和錯誤又有點不一樣,錯誤往往是指非預期的情況,必須透過修改程式來解決,而異...

鐵人賽 Software Development DAY 16

技術 [Day 15] 手牽手心連心!

今天要來談的是,如何在這四個語言去實作出 Linked list。而 Linked list 是怎樣的資料結構呢?我們可以看到下面每個 Node 都有綠色和黃色...

鐵人賽 自我挑戰組 DAY 16

技術 [Day 16] Rust Slice Type

大家好,今天要來介紹一種全新的資料型態 Slice,Slice 讓你指向一個集合部分的連續資料而且沒有任何的 ownership。 那麼為什麼會需要這個資料型態...

鐵人賽 Software Development DAY 15

技術 [Day 14] 楚河漢界劃清楚!

今天我們來聊聊 Scope 這件事吧!不要小看這件事情,有很多東西還是對進階的 Developer 有所幫助呢! Python 3 在 Python 的世界,...

鐵人賽 Software Development DAY 12
從 Rust 往程式底層前進 系列 第 16

技術 panic - 概念篇

Rust 的 panic 其實是個有趣的機制,怎麼說呢,我們來看個範例程式,請試著自己先在腦中模擬一下這段程式會印出什麼: use std::panic; s...

鐵人賽 自我挑戰組 DAY 15

技術 [Day 15] Rust References and Borrowing 參照與借用

大家好今天要介紹的是 Reference and Borrowing(參照與借用),上一篇在最後的時候有提到如果所有權已經被轉移給了函式但是原本的 scope...

鐵人賽 Software Development DAY 14

技術 [Day 13] 談談抽象這件事

今天的主題是 Abstract class,也就是抽象類別。抽象類別跟一般類別不同之處在於,抽象類別僅定義方法,而沒有實作,因此不能直接拿來生成物件。舉個例子...

鐵人賽 自我挑戰組 DAY 14

技術 [Day 14] Rust Ownership 所有權 (3)

各位好,時間過得有點快沒想到已經 Day14 了!,不知道時間夠不夠達成我當初設定的目標呢? 那麼今天就繼續把 ownership 的概念完成吧!今天要講的是...

鐵人賽 Software Development DAY 13

技術 [Day 12] 如果我有富爸爸

繼承是 Object-Oriented Programming 當中的一個概念。如果我們說一個類別 B 繼承了類別 A,則 B稱為 A的子類別,A 就是 B的父...

鐵人賽 自我挑戰組 DAY 13

技術 [Day 13] Rust Ownership 所有權 (2)

今天要來繼續研究 ownership,這是一個比較有挑戰的章節各位準備好了嗎?我們繼續前進吧! Ownership Rules 在開始之前我們先來看一下 own...

鐵人賽 Software Development DAY 12

技術 [Day 11] 我的世界變多維了!

先前我們已經有講過 Array 以及各語言與 Array 類似的資料結構,現在讓我們進一步來看當我們的 Array 從 Single dimension 變成...

鐵人賽 自我挑戰組 DAY 12

技術 [Day 12] Rust Ownership 所有權 (1)

大家好,今天要來介紹的是 Rust 的 ownership 老實說筆者在開始寫這篇之前沒有什麼信心,感覺沒有辦法很好的和各位解釋所以如果我有寫不對或是哪裏有疑問...

鐵人賽 Software Development DAY 12
從 Rust 往程式底層前進 系列 第 12

技術 在 main 函式之前

我們的 main 真的是程式一開始執行的點嗎?還記得在 gdb 中看程式是怎麼執行過來的指令 bt 嗎,我們用 gdb 把中斷點設在 main 函式,在執行起來...

鐵人賽 Software Development DAY 11

技術 [Day 10] 零壹零壹零零壹

今天的挑戰內容是把一個整數本來是十進位表示,變成是二進位表示。例如 5 變成二進位的話是 101,13 變成二進位是 1101。然而我們不只是要以二進位表示,而...

鐵人賽 自我挑戰組 DAY 11

技術 [Day 11] Rust Control Flow 控制流程

各位好,今天要來介紹的是 Rust 的控制流程那麼其實也就是各位熟悉的 if else for loop 等用法。那就馬上開始吧! if Expressions...

鐵人賽 Software Development DAY 10

技術 [Day 9] 自己和自己的對話

今天要來談的是遞迴,不知道大家小時候有沒有跟我一樣,一看到遞迴就會有種莫名的恐懼,覺得很難去推論出這個遞迴函式到底要做什麼事情,然後到最後就頭暈了…但我沒想到...

鐵人賽 自我挑戰組 DAY 10

技術 [Day 10] Rust Functions 函式

又到了每天學一點 Rust 的時間,在進入今天的主題之前為了讓程式寫起來可以更方便好管理我們先來介紹一下簡單的 Module 而我其實在前面的範例就已經是這樣做...

鐵人賽 Software Development DAY 9

技術 [Day 8] 談談映射這件事

今天我們來看各家有什麼樣的資料結構來存放 Key-value pair 囉!而這樣的結構又是一對一的映射關係,也就是一個 Key 只會對到一個 Value。而我...

鐵人賽 自我挑戰組 DAY 9

技術 [DAY 9] Rust Data Types 資料型態 (2)

今天要繼續上一篇還未完成的資料型態,相信今天也是充實的一天那就讓我們開始吧! Compound Types Compound types 可以把很多的值合併再一...

鐵人賽 Software Development DAY 8

技術 [Day 7] 一個蘿蔔一個坑

今天我們來探討跟 Array 相關的話題吧!當然不是每個語言都有內建 Array,而是有其他類似的,我們會一起來看看有什麼樣的不一樣囉!(今天比較像是自由探索,...

鐵人賽 自我挑戰組 DAY 8

技術 [Day 8] Rust Data Types 資料型態 (1)

各位好又見面了,今天要和各位介紹 Rust 的資料型態而想必有寫過程式的應該對基本的資料型態都不陌生,那麼就讓我們開始介紹吧! 強型別 Rust 是屬於強型別的...

鐵人賽 Software Development DAY 7

技術 [Day 6] 反轉字串大亂鬥!(reverse string)

今天在 Hackerrank 的安排是複習的一天,本來的題目是比較容易,所以在這裡我想我們就來做一些比較經典的問題,但又跟先前的主題有關係。這裡我選了一個經典的...

鐵人賽 自我挑戰組 DAY 7

技術 [Day 7] Rust Variables and Mutability 變數和可變性

大家好,上一篇有稍微提到 Rust 的變數預設都是 immutable 的而 rust 的變數類型其實非常的多跟複雜我們今天就用例子來帶各位一步一步了解 rus...

鐵人賽 Software Development DAY 7

技術 實作 heap

本系列的程式碼都有在 Ubuntu 18.04 下以目前的穩定版 Rust 1.37 測試過 這次的程式碼在 https://github.com/Dan...

鐵人賽 自我挑戰組 DAY 6

技術 [Day 6] Rust Programming a Guessing Game 終極密碼

大家好今天會帶各位來玩玩官網的第一個範例,實作一個終極密碼的小遊戲。 終極密碼想必大家都很熟悉了吧?我就不多做介紹了直接開始吧! 新增一個專案出來 $ car...

鐵人賽 Software Development DAY 6

技術 [Day 5] 又回到最初的起點! (迴圈剖析)

今天的主題是 Loop,也就是迴圈。迴圈是一種常見的控制流程,意思是一段程式,我們可以執行特定次數,或者是當某個條件成立時,就停止執行。當然我們有時候會不小心寫...

鐵人賽 Software Development DAY 5

技術 [Day 4] 類別與結構你選誰?

今天的主題是建立一個 Class Person(不過我們待會就會看到不是每個語言都有所謂的 Class),而 Person class 有一個屬性是 age,...

鐵人賽 自我挑戰組 DAY 5

技術 [Day 5] Rust Hello World!

大家好,今天要帶大家搭建 Rust 的開發環境還有使用 cargo 工具來 Hello world 一下。 Rustup rustup is an insta...

鐵人賽 Software Development DAY 5

技術 Trait Object

這功能或許平常比較不常用一點,它長這樣子 trait Name { fn name(&self); } struct Foo; impl Nam...