iT邦幫忙

2023 iThome 鐵人賽

DAY 1
1

從去年開始,我就把Rust納入了我的學習計畫中。在這個系列文章中,我將分享我在學習過程中所遭遇的挑戰。必須承認,Rust這門語言確實不容易掌握!在接下來的30天,我將主要參考書籍《Zero To Production In Rust》的內容(之後提及這本書時簡稱zero2prod),嘗試按照書中的指引進行學習和實踐。另外這本書出版以來Rust生態有了一些變化,所以我不會完全按照書上的範例實作。

身為一名C#後端工程師,學習Rust帶給我許多不同的觀點和思考方式。第一次真正接觸不受微軟富爸爸主導的語言,讓我體驗到了不同的軟體生態環境。Rust偏向函數式的風格也讓我重新思考了日常的編碼習慣。相較於C#,Rust是一門更接近底層的語言,這意味著它會揭示許多在C#中不太需要處理的底層實作細節,例如資料共享與複製,在C#中交由CLR處理,但在Rust中,我們需要謹慎考慮以避免引發所有權問題。

這系列的文章預期適合有一定後端開發經驗的人,想要從自己熟悉的領域切入rust開發。除了如何用rust開發一個web api專案以外,我會以我的經驗討論兩種語言的不同,預計不會在所有權上做太多討論,允許我偷懶直接使用clone來安撫嚴格的編譯器,另外也有可能常常岔題討論其他東西。rust除了高性能以外,對於習慣物件導向工程師的我來說,帶給我不同方向的抽象思考。

最後,在這個系列的第一天,我想再次強烈推薦《Zero To Production In Rust》這本書。除了涵蓋Rust的開發內容外,該書還討論了許多與軟體開發和構建相關的概念。總之,這本書對我的學習和思考都有莫大的幫助。

這系列文章的程式碼會放在這裡
https://github.com/marvin-hsu/zero_to_production

目前已經發布的內容
Day01 - 前言
Day02 - 開發之前的那些事
Day03 - 淺談Axum
Day04 - 先做一個health check吧
Day05 - 從Server到Handler
Day06 - 實做訂閱API
Day07 - 用python進行整合測試
Day08 - 透過重構了解Rust的模組管理
Day09 - 應用程式模組
Day10 - 單元測試與Domain Module


下一篇
Day02 - 開發之前的那些事
系列文
Rust Web API 從零開始30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言