搜索技巧 海洋云增白 开源地图 AI 搜索答案 沙丘魔堡2 压缩机站 自由职业 policy 小团队 颈挂空调 Chumby 个人电脑 极端主义 团队 PostgreSQL AI工具 证券 DirectX DrawingPics 化学 KDE 披萨农场 多动症 植物学 分析化学 Three.js 大会 残疾人学校 初创 QB64 更多

从成功的Rust重写项目中汲取的经验教训 (gaultier.github.io)

作者回顾了一个C++项目到Rust的增量式重写过程,总结了Rust的优势和遇到的挑战。优势包括简化代码、提升性能、更容易发现代码bug、方便的跨平台编译和内置测试框架。劣势主要集中在与C/C++交互时,`unsafe`代码块易引入未定义行为,Miri和Valgrind的局限性,内存泄漏问题,跨平台编译和Cbindgen工具的不足,不稳定的ABI,缺少自定义内存分配器的支持,以及Rust本身和FFI相关的复杂性。作者认为Rust在纯Rust项目中表现出色,但在与C/C++交互时仍存在很多问题,并表示未来可能会考虑使用Zig进行类似的重写工作。

像 1987 年那样从头开始写一个电子游戏 (gaultier.github.io)

本文介绍了如何使用 Odin 编程语言和 X11 协议从零开始编写一个类似于扫雷的游戏。文章详细讲解了连接 X 服务器、创建窗口、加载资源、处理键盘和鼠标事件以及实现游戏逻辑的步骤,并提供了完整的代码示例。作者强调了这种方法的优势在于应用程序体积小巧、独立性强,可以在任何 Unix 系统上运行。