Rust 不同的测试方式 本文主要探索了在 rust 中进行单元测试和集成测试的一些方式, 虽然是讲 测试为主,但是作者从 DI(依赖注入)的视角讲述了使用 cfg 来实现不同的环境进行不同的初始化的一些思路 原文链接: https://blog.frankel.ch/different-test-scopes-rust/ yew + actix 的项目模板 这是一个模板项目, 主要使用 actix做后端, yew-ui hello world 类型安全的 api 例子 Docker化 github 地址: https://github.com/security-union/yew-actix-template Rust Keras Like: 纯 Rust 实现的机器学习库 rkl (Rust Keras Like) 是一个纯 Rust 实现的,类似 keras 的一个机器学习库,示例代码如下: use rkl::prelude /test.model"); } github 地址: https://github.com/AhmedBoin/Rust-Keras-Like -- From 日报小组 BobQin,FBI小白
给 C++ 开发者的 Rust 分享 与 c++ 相比,这个分享是关于使用 Rust 语言来编写安全、并发和优雅的代码。 油管地址:https://www.youtube.com/watch? v=k7nAtrwPhR8 关于 Rust 2020 我们接受几乎所有与 Rust 相关的想法:语言特性、工具需求、社区项目、生态系统需求等等。如果和 Rust 有关,我们都想听一听。 官博:https://blog.rust-lang.org/2019/10/29/A-call-for-blogs-2020.html 更多请看:https://readrust.net/rust-2020 这样做可能比 “AoS” (结构数组)布局快很多(10倍),就像所有当前的 Rust 线性代数库所做的那样,这取决于您的工作负载。 参与讨论:https://www.reddit.com/r/rust/comments/dovmnl/building_a_3d_led_cube_display_using_embedded_rust
变量的隐藏Rust 语言中允许重复定义一个相同变量名的变量。规则是 后面定义的变量会隐藏 前面定义的同名变量。 ("{}",price);//输出 299同名常量Rust 中,常量不能被隐藏,也不能被重复定义。
谷歌宣布推出 Rust 开发的 KataOS 操作系统 谷歌本周宣布发布 KataOS,它是用于进行机器学习的嵌入式设备的操作系统。 KataOS 从设计上就具备安全考虑,不但几乎完全是由 Rust 实现的,而且是建立在 seL4 微内核的基础之上,seL4 在数学上被证明是安全的,具有保证保密性、完整性和可用性。 消息来源:https://opensource.googleblog.com/2022/10/announcing-kataos-and-sparrow.htm Kanal: 比标准库快 80 倍的 channel 实现 Kanal 是一个目前 Rust 最快的 channel 实现,比标准库快 80 多倍.
Rust内联 在 Rust 中有很多关于 #[inline] 属性的知识。我发现自己经常在教别人它是如何工作的,所以我最终决定把它写下来。 额外说明:这是我所知道的,不一定是真实的。 此外,#[inline] 的确切语义不是一成不变的,在未来的 Rust 版本中可能会发生变化。 为什么内联很重要? 内联是一种将函数调用替换为函数体的一种优化转换。 Arti: 一个纯Rust实现的Tor 今天,我很高兴地宣布 Tor 的新时代实现。 在过去一年左右的时间里,我们一直致力于“Arti”,这是一个用 Rust 重写 Tor 的项目。 自 1.0.0 版以来的主要更新: fltk-rs 移到了自己的 github 组织,里面也包含了与 fltk-rs 相关的工具,比如 fltk-calendar、fl2rust(fluid to rust
Rust China 2020 公告原文:Rust 2020 中国大会,将于 12月26,27日在上海举办。本次大会由 Rust语言中文社区 主办,一年一度中国 Rustaceans 最盛大的节日。 现在开始征集 Topic, 同时大会接受使用 Rust 或对 Rust 感兴趣的企业的赞助,赞助门槛不高,详情有意愿的朋友请与我联系沟通。 IntelliJ Rust插件更新 与 C/C++ 和其他本地语言一样,Rust 也可以对条件编译的支持。指示编译器是否在编译中包括或忽略一段代码的最常见方法是添加具有所需条件的cfg属性。 更多请看博客原文:https://blog.jetbrains.com/clion/2020/10/intellij-rust-new-functionality-for-cargo-features/ 社区学习交流平台订阅: Rust.cc论坛: 支持rss 微信公众号:Rust语言学习交流
华为❤️ Rust 今天, EuroRust 在 twitter 上感谢了 华为 对 eurorust23 的赞助, 并且列举了一些华为在 Rust 社区的贡献. twitter原文 https://twitter.com /euro_rust/status/1711298027284013221 原文链接 https://trusted-programming.github.io/ Python 调用 Rust 本文演示了从 python 调用 Rust 功能的 三种方式: HTTP 接口的方式 IPC 方式 FFI 方式(动态库) 原文链接 https://blog.frankel.ch/rust-from-python 原文链接 https://www.hackingwithrust.net/2023/10/08/an-easy-way-of-implementing-the-dependency-injection-pattern-in-rust / Rust Metadata Extensions 在 Rust 语言编程中,std::os::linux::fs::MetadataExt trait 为 Linux 平台提供了操作系统特定的扩展。
Rust语言开发 基础语法 变量默认不可变,需用 mut 显式声明可变性: let x = 5; // 不可变 let mut y = 10; // 可变 所有权系统是核心特性,确保内存安全: let 使用 cargo clippy 进行代码检查,遵循 Rust 惯用模式。 ("Found {} primes", primes.len()); } 优化点: 使用 rayon 库实现数据并行 无数据竞争的线程安全保证 进阶开发建议 性能关键路径 选择 Vec 而非链表(Rust 条件编译处理平台差异: #[cfg(target_os = "linux")] fn platform_specific() {} FFI交互范例 #[no_mangle] pub extern "C" fn rust_add
# 为什么学 Rust Rus 是一门系统编程语言,专注于安全,尤其是并发安全,支持函数式和命令式以及泛型等编程范式的多范式语言。 2022年的前端圈中,像 Rust、Go 这种的偏底层的编程语言在整个前端工具链中使用得越来越多,为了不让自己落后,所以用这个系列的博客来记录自己学习 Rust 的整个过程。 下面是我找到的一些关于 Rust 资料的中文网站: https://www.rust-lang.org/zh-CN/ (opens new window) https://rustwiki.org/ (opens new window) Rust 程序设计 (opens new window) # 安装 Rust 参照官网的安装教程,我这里使用 WSL 安装 Rust 的开发环境,直接使用如下的命令即可
使用 Cackle 抵御 Rust 供应链攻击 Cackle 是一个代码 ACL 检查器,用于增加供应链攻击的难度。Cackle 通过 cackle.toml 进行配置。 davidlattimore.github.io/making-supply-chain-attacks-harder.html 文本对决:Gap Buffers vs Ropes 我一直在从事一个业余项目,用 Rust Rust有许多经过大量优化工作的绳索库。显而易见的做法是选择其中一个并继续。但我想亲自看看间隙缓冲区与这些更"高级"的数据结构相比如何。现代计算机可以非常快速地在线性内存上操作。
【油管趣搞】Rust 语言是不可避免的趋势 b站搬运: https://www.bilibili.com/video/BV1wr4y1V758? for Linux (async) Rust doesn't have to be hard 这篇文章持有与上周五 Rust Is Hard, Or: The Misery of Mainstream Programming 一文不一样的观点:如果你懂得权衡性能与可用里,例如不过分纠结 Arc 优化、使用适当的 动态分发,Rust 也可以不复杂。 至于是需要更底层开发 hpyer 框架直接使用,还是基于 rocket 框架来获得更多开箱即用的功能,就要看各位的权衡了。 微信公众号:Rust 语言中文社区
Rust 培养提高计划15 - 分享主题:《探讨为什么 Pin 在 Rust 异步编程中如此重要》 来自 databend 的分享: 分享讲师:苏林 分享时间:周日晚上 2021-10-31 20:30 目的是让大家了解如何使用 Pin 以及 Future 为什么需要 Pin, 让大家更好的理解 Rust 异步编程。 往期课程回放:Rust 培养提高计划 : http://t.cn/A6M4JIOx 论坛原帖:https://rustcc.cn/article? -- 2021-10-10 日报 另外 DataFuse lab 联合创始人 @BoHuTang 是这样起名的: Databend名字渊源于相对论。
为什么要用 Rust 有 20 年编程经验的 egui 作者讲了自己为什么选择了 Rust。 安全性和速度 借用检查器 枚举类型 错误处理 ... ReadMore:https://www.rerun.io/blog/why-rust 在 Rust 中使用 nom nom 可以使任何人都可以写出简单、类型安全的解析器。 Rust。 C++更难扩展和保持高质量 Java不能灵活性不足和不能进行系统编程 Go也是一种垃圾回收语言 我们选择了Rust。Rust有着性能强、内存管理简单和易用性等优点。 ReadMore:https://www.pinecone.io/learn/rust-rewrite/ From 日报小组 冰山上的 mook && Mike
扩展 Rust Effect 系统 Yosh 在 RustConf 2023 演讲的文字记录。在本次演讲中,Yosh 解释了什么是 effects、是什么使它们难以融入语言,以及如何克服这些挑战。 Rust 自 2015 年发布 1.0 版本以来,一直在不断发展。添加的主要功能:try 运算符(?)、const 泛型、泛型关联类型 (GATs),还有 async/.await。 v0.12.0 发布链接,https://github.com/LechintanTudor/sparsey/releases/tag/0.12.0 Rust 内存安全性的一个案例 有些模式在 C++ 中使用太危险,但因为 Rust 的内存安全性,在 Rust 中很实用,文章介绍了一个具体的例子。 原文链接,https://blog.dureuill.net/articles/too-dangerous-cpp/ Rust 语言中文社区日报小组祝大家龙年大吉,阖家幸福! From 日报小组 洋芋
一位 Python 开发者学习 Rust 的心路历程 我对学习一门新语言一直犹豫不决。在我的职业生涯中,我大部分时间都使用Python。 Rust 在速度和安全性方面一直名列前茅,并且根据 Stack Overflow 的调查,它也是最受欢迎的编程语言之一。 我真正被激发去深入学习Rust的原因是听了《Ship It》播客,Tim McNamara 在其中谈到他如何在 AWS 推广 Rust。Rust 不仅仅能节省计算资源,还能提高可持续性,节约资金。 ReadMore: https://blog.erikhorton.com/2023/10/22/skills-getting-rusty.html 从 Vec<Result<>> 中生成 Result ReadMore: https://ntietz.com/blog/rust-vec-of-result/
前言这一章开始我们的rust版本升级为 rustc 1.82.0 (f6e511eec 2024-10-15)在这一章我们学习 枚举(enumerations),也被称作 enums。 这导致了无数的错误、漏洞和系统崩溃,在过去 40 年中可能造成了 10 亿美元的痛苦和损害。null 值的问题在于,如果尝试将 null 值用作非 null 值,则会收到某种错误。 <T> 语法是我们尚未讨论的 Rust 的一个功能。它是一个泛型类型参数,我们将在第 10 章中更详细地介绍泛型。 实际上,这个错误消息意味着 Rust 不理解如何添加 i8 和 Option<i8>,因为它们是不同的类型。当我们在 Rust 中有一个像 i8 这样的值时,编译器将确保我们始终有一个有效的值。 这是 Rust 的一个深思熟虑的设计决策,以限制 null 的普遍性并提高 Rust 代码的安全性。
f=flair_name%3A"️ project") Rust 社区大家好,希望大家都有一个美好的年底。 以前rust_in_flutter,该框架使您能够在 Flutter 应用程序中构建和部署 Rust 逻辑。如果您的应用程序需要一些高质量的 GUI,此解决方案可能会有所帮助。 只需将此框架添加到您的应用程序项目中,您就可以一起编写 Flutter 和 Rust! 虽然 Rust 是一种强大的高性能本机编程语言,但其构建图形用户界面的生态系统还远未成熟。尽管 Rust 已经有了一些 GUI 框架,但它们无法与 Flutter 提供的广泛支持和流畅的开发体验竞争。 您不需要编写一行 Rust!
原文链接:https://www.greyblake.com/blog/2021-10-11-phantom-types-in-rust/ 使用 Rust 进行 PIC32 单片机编程 作者: 这篇文章是给像我这样的新手 然而,对于JavaScript开发人员来说,需要的往往是相反的——将Rust函数合并到JavaScript api中。 这使得开发人员可以用“纯JavaScript”编写程序,同时还可以利用Rust的高性能功能。使用WasmEdge Runtime,您可以做到这一点。 原文链接:https://www.secondstate.io/articles/embed-rust-in-javascript/ Java 开发者分享的 Rust 学习笔记 作者: 你好! 我是一名倾向于函数式编程的Java开发人员,这也是我了解Rust的原因。随着时间的推移,我开始喜欢《Rust》,所以我做了笔记以快速参考。
为什么要异步 Rust 这篇文章讨论了Rust的 async/await 语法设计。作者指出,async/await 语法最初发布时备受瞩目和期待。但最近,接受程度有些参差不齐。 作者认为 Rust 中异步编程是一项强大的功能,可以为 Rust 应用程序带来许多好处。 原文链接 https://github.com/rust-lang/rust/pull/115822#issuecomment-1762750427 编译时检查泛型函数参数的有效性 本文介绍了一种在编译器检测泛型函数参数有效性的一个小技巧 原文链接 https://andreabergia.com/blog/2023/10/a-jvm-in-rust-part-7-objects-and-gc/ faer: 0.13版本发布 Faer 是一个 Rust 语言的线性代数库,它实现了纯 Rust 的低级线性代数例程。
安装Rust 通常情况下,我们安装Rust是通过Rustup这个工具来进行的,它是一个 Rust 安装程序和版本管理工具。 curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh 更新Rust 现在的Rust更新非常频繁,可以通过在终端执行如下命令来更新你的 Rust。 source ~/.bashrc 卸载 卸载 Rust 和 rustup,在终端执行以下命令即可卸载: rustup self uninstall 编辑器 那么用什么写Rust代码呢? 只需要搭配插件rust-analyzer即可。 至此,整个Rust的开发环境就搭建完毕了。