【Rust日報】 2019-04-18

用 Rust 寫一個 Rougelike 遊戲


視頻教程,9 分多鐘,講得輕鬆有趣,雖然是英文,可是不難懂。推薦。python

視頻中用的這個庫 tcod-rs,是 rougelike 工具庫。另外還有一些 rust 的 rougelike 工具庫,好比 quicksilver-roguelike。另外還有教程源碼。數據庫


sfsdb - 高性能 k-v 文件系統數據庫


做者宣稱的特色是,簡單,高性能,不須要額外學習,使用它就好像使用 Rust 語言自身的結構同樣。好比:安全



#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]pub struct User {    pub name: String,    pub age: u64,}
fn main() {    let mut db = sfsdb::new("db");
   let u = User {        name: "Justin Evans".to_string(),        age: 22,    };
   // Remember to use proper error handling and not unwrap()    // in a real world application.    db.save("some key", &u).unwrap();    db.save("other key", &u).unwrap();
   assert_eq!(db.exists("some key"), true);    assert_eq!(u, db.load::<User>("some key").unwrap());    assert_eq!(u, db.load::<User>("other key").unwrap());}

不過做爲一款單機數據庫,小編仍是不是很理解這個庫的意義有多大。你們能夠留言指教小編。
網絡

Repo
app


File-Forklift - 網絡文件遷移工具


支持 NFS/CIFS/Samba。ide

Read More
工具


lemmy - 使用 Rust 實現相似 reddit 這種聚合網站的嘗試


代碼庫並不大,適合有這個想法的人嘗試(我知道,不少人有過這個想法 :D)性能

Repo
學習


總結:顯示樹狀目錄文件結構有幾種方式(只用Rust工具)


  1. tree-rs優化

  2. treeify

  3. exa --tree

  4. fd 與 treeify 配合使用



min-sized-rust:如何縮小 Rust 二進制包大小的總結


總結有如下方法:

  1. 以 --release 編譯

  2. strip 掉符號

  3. 把 cargo 的編譯參數加個 opt-level = 'z' 以優化體積編譯

  4. 開啓 LTO

  5. 去掉 Jemalloc

  6. 減小 cargo 的並行代碼生成單元

  7. panic 的時候直接中斷掉程序

  8. 使用 xargo 優化 libstd

  9. 使用 panic_immediate_abort 去掉 panic 的格式化代碼

  10. 不使用 libstd: #![no_std]


Read More


一隻蒸氣朋克手錶


圖片


netease-cloud-music-gtk: 基於 Rust + GTK 開發的網易雲音樂播放器


國人開發,特色:


  • 安全:Rust 天生的

  • 極速:相比 Node/python 版,Rust 速度可謂一騎絕塵

  • 穩定:除了網速或網易 API 限制,基本不會出現運行問題

  • 簡潔:仿 GNOME Music 風格,GTK 原生界面,純粹得使人髮指

  • 簡單:最小的編譯與運行依賴


圖片

圖片

你們去感覺一下。

Repo

相關文章
相關標籤/搜索