< 返回版块

Mike Tang 发表于 2019-04-18 10:42

Tags:rust

用 Rust 写一个 Rougelike 游戏

视频教程,9 分多钟,讲得轻松有趣,虽然是英文,但是不难懂。推荐。

视频中用的这个库 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

File-Forklift - 网络文件迁移工具

支持 NFS/CIFS/Samba。

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

一只蒸气朋克手表

pic

netease-cloud-music-gtk: 基于 Rust + GTK 开发的网易云音乐播放器

国人开发,特点:

  • 安全: Rust 天生的
  • 极速:相比 Node/python 版,Rust 速度可谓一骑绝尘
  • 稳定:除了网速或网易 API 限制,基本不会出现运行问题
  • 简洁:仿 GNOME Music 风格,GTK 原生界面,纯粹得令人发指
  • 简单:最小的编译与运行依赖

pic pic

大家去感受一下。

Repo


From 日报小组 @Mike

日报订阅地址:

评论区

写评论

还没有评论

1 共 0 条评论, 1 页