Avian - 一个基于 ECS(实体组件系统)的2D和3D物理引擎
Avian 是一个基于 ECS(实体组件系统)的2D和3D物理引擎,专为Bevy设计,Bevy是一个在Rust中构建的,非常简洁的数据驱动游戏引擎。Avian 注重人体工程学和模块化设计,重点提供一种原生的、由ECS驱动的用户体验。
https://joonaa.dev/blog/07/avian-0-2
2024年Rust回顾:接下来是什么?
本文总结了Rust编程语言在2024年的主要进展,并展望了未来的发展方向。
在2024年,Rust实现了多项重要改进。其中,新增的&raw const
和&raw mut
引用语法允许在不满足对齐要求的情况下安全地引用字段,特别适用于#[repr(packed)]
结构体。这项改进增强了Rust对低级内存操作的支持。此外,从Rust 1.82版本开始,浮点数可以在const
函数中使用,尽管受限于平台特性,这一功能仍具备广阔的应用前景。新增的#[expect(lint)]
属性则提供了一种标记预期警告的方法,减少了不必要的编译器提示,提高了代码的可维护性。
其他值得关注的改进包括core
库中Error
特性的稳定化,为嵌入式开发和no_std
环境提供了更多可能性。惰性初始化机制通过LazyCell
和LazyLock
的引入得以简化,而#[diagnostic::on_unimplemented]
属性使编译器能够在特性未实现时提供更清晰的错误信息。此外,Rust对应用程序二进制接口(ABI)的文档进行了改进,为跨语言调用提供了更详细的说明。
展望2025年,社区对多个新特性充满期待。例如,编译时反射机制的引入将极大增强元编程能力,而现代分配器特性则能带来更灵活的内存管理接口。对于类型系统,社区希望能够直接引用枚举的具体变体类型,同时期待let
链特性的稳定化以简化条件判断中的变量绑定。关于ABI,进一步的改进将提升Rust与其他语言的互操作性。此外,开发者对在常量泛型参数中使用自定义类型(adt_const_params
特性)充满期待,同时建议为Option
类型添加inspect_none
方法以简化空值处理。
作者对2024年的成果表示满意,并对2025年Rust的发展方向寄予厚望。这些改进和期望不仅体现了Rust社区的活力,也为编程语言的未来发展注入了更多可能性。
https://barretts.club/posts/rust_review_2024/
Rust借用检查器的四个局限
本文探讨了作者在使用Rust编程语言过程中遇到的四个借用检查器限制。仅代表作者观点。
首先,作者指出,借用检查器无法充分考虑match
和return
语句的控制流,导致在某些情况下,编译器错误地认为存在多重可变借用。
其次,作者讨论了在异步编程中,借用检查器的限制可能导致难以编写符合Rust安全模型的代码。
第三,借用检查器在处理复杂数据结构时,可能无法准确推断借用的生命周期,导致编译错误。
最后,借用检查器在某些情况下无法识别代码中的逻辑,导致不必要的限制。
https://blog.polybdenum.com/2024/12/21/four-limitations-of-rust-s-borrow-checker.html
--
From 日报小组 Mike
社区学习交流平台订阅:
评论区
写评论还没有评论