Comprehensive Rust(简体中文) 202412
. . . . . . . . . . . . . 237 46 添加第三方 Crate 238 46.1 配置 Cargo.tom 文件以添加 crate . . . . . . . . . . . . . . . . . . . . . . . . . 238 46.2 配置 gnrt_config.toml . . . . . . . . . . . . . . . . . . . . 这将为你提供 Cargo 构建工具 (cargo) 和 Rust 编译器 (rustc)。你还将获得 rustup,这是一个命令 行实用程序, 你可以用它来安装不同的编译器版本。 安装 Rust 之后,你应当配置你的编辑器或 IDE 以开始使用 Rust。大多数编辑器使用了 rust-analyzer。 它为 VS Code、Emacs、Vim/Neovim 及其他许多编辑器提供了自动补全及定义跳转的功能。同样也可 cargo clippy)进行扩展。 – 详情请参阅 官方 Cargo Book 2.2 本培训中的代码示例 在本培训中,我们将主要通过示例探索 Rust 语言,这些示例可以通过浏览器执行。这能大大简化配置过 程,并确保所有人都能获得一致的体验。 我们仍然建议你安装 Cargo:它有助于你更轻松地完成练习。在最后一天,我们要做一个综合的练习,向 你展示如何使用依赖项,因此你需要安装 Cargo。 本课程中的代码块是完全交互式的:0 码力 | 359 页 | 1.33 MB | 10 月前3Rust 程序设计语言 简体中文版 1.85.0
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 14.1. 采用发布配置自定义构建 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rust 中文社区翻译。 本书的当前版本假设你使用 Rust 1.85.0(2025-02-17 发布)或更高版本并在所有项目的 Cargo.toml 文件中通过 edition = "2024"将其配置为使用 Rust 2024 edition 惯用法。请查 看第一章的 “安装” 部分了解如何安装和升级 Rust。 本书的英文原版 HTML 格式可以在 https://doc.rust-lang 你编写更快、更可靠的软件。在编程语言设计中,高层的工程学与底层的控制往往是难以兼得 的;而 Rust 则试图挑战这一矛盾。通过平衡强大的技术能力与优秀的开发者体验,Rust 为你 提供了控制底层细节(如内存使用)的选项,而无需承受通常与此类控制相关的所有繁琐细 节。 Rust 适合哪些人 Rust 因多种原因适合许多人。让我们看看几个最重要的群体。 开发者团队 Rust 已被证明是一个对于具有不同系统编程0 码力 | 562 页 | 3.23 MB | 8 天前3Rust 程序设计语言简体中文版
的内容 ............................................................................... 349 14.1. 采用发布配置自定义构建 ........................................................................................... 350 你编写更快、更可靠的软件。在编程语言设计中,高层的工程学与底层的控制往往是难以兼得 的;而 Rust 则试图挑战这一矛盾。通过平衡强大的技术能力与优秀的开发者体验,Rust 为你 提供了控制底层细节(如内存使用)的选项,而无需承受通常与此类控制相关的所有繁琐细 节。 Rust 适合哪些人 Rust 因多种原因适合许多人。让我们看看几个最重要的群体。 开发者团队 Rust 已证明是一个对于具有不同系统编程知识水平的大型开发团队协作而言,非常高效的工 rustup 下载 Rust,这是一个管理 Rust 版本和相关工具的命 令行工具。下载时需要联网。 注意:如果你出于某些理由倾向于不使用 rustup ,请到 Rust 的其他安装方法页面 查看其它安装选项。 接下来的步骤会安装最新的稳定版 Rust 编译器。Rust 的稳定性确保本书所有示例在最新版本 的 Rust 中能够继续编译。不同版本的输出可能略有不同,因为 Rust 经常改进错误信息和警0 码力 | 600 页 | 12.99 MB | 1 年前3Rust 语言学习笔记
...... 52 4.3.8 trait 定义中的生命周期和可变性声明 ........................................ 52 第五章 属性与 Cargo 配置 ......................................................................... 53 5.1 属性 ............ cargo 参数配置 ............................................................................ 57 5.2.1 package 配置 ...................................................................... 57 5.2.2 依赖的详细配置: ... ............................................................. 58 5.2.3 自定义编译器配置 ................................................................ 58 5.2.4 feature 段落................................0 码力 | 117 页 | 2.24 MB | 1 年前3Hello 算法 1.1.0 Rust版
元,则收银员需要找我们 31 元。他 会很自然地完成如图 1‑3 所示的思考。 1. 可选项是比 31 元面值更小的货币,包括 1 元、5 元、10 元、20 元。 2. 从可选项中拿出最大的 20 元,剩余 31 − 20 = 11 元。 3. 从剩余可选项中拿出最大的 10 元,剩余 11 − 10 = 1 元。 4. 从剩余可选项中拿出最大的 1 元,剩余 1 − 1 = 0 元。 5. 完成找零,方案为 是找一台计算机,运行这两个算法,并监控记录它们的运行时间和内存占用情况。这种评估方式能够反映真 实情况,但也存在较大的局限性。 一方面,难以排除测试环境的干扰因素。硬件配置会影响算法的性能。比如在某台计算机中,算法 A 的运行 时间比算法 B 短;但在另一台配置不同的计算机中,可能得到相反的测试结果。这意味着我们需要在各种机 器上进行测试,统计平均效率,而这是不现实的。 另一方面,展开完整测试非常耗费资源。 者的优劣并根据情境选择合适的方 法至关重要。 2.3 时间复杂度 运行时间可以直观且准确地反映算法的效率。如果我们想准确预估一段代码的运行时间,应该如何操作呢? 1. 确定运行平台,包括硬件配置、编程语言、系统环境等,这些因素都会影响代码的运行效率。 2. 评估各种计算操作所需的运行时间,例如加法操作 + 需要 1 ns ,乘法操作 * 需要 10 ns ,打印操作 print() 需要0 码力 | 388 页 | 18.50 MB | 1 年前3Hello 算法 1.0.0 Rust版
元,则收银员需要找我们 31 元。他 会很自然地完成如图 1‑3 所示的思考。 1. 可选项是比 31 元面值更小的货币,包括 1 元、5 元、10 元、20 元。 2. 从可选项中拿出最大的 20 元,剩余 31 − 20 = 11 元。 3. 从剩余可选项中拿出最大的 10 元,剩余 11 − 10 = 1 元。 4. 从剩余可选项中拿出最大的 1 元,剩余 1 − 1 = 0 元。 5. 完成找零,方案为 是找一台计算机,运行这两个算法,并监控记录它们的运行时间和内存占用情况。这种评估方式能够反映真 实情况,但也存在较大的局限性。 一方面,难以排除测试环境的干扰因素。硬件配置会影响算法的性能。比如在某台计算机中,算法 A 的运行 时间比算法 B 短;但在另一台配置不同的计算机中,可能得到相反的测试结果。这意味着我们需要在各种机 器上进行测试,统计平均效率,而这是不现实的。 另一方面,展开完整测试非常耗费资源。 者的优劣并根据情境选择合适的方 法至关重要。 2.3 时间复杂度 运行时间可以直观且准确地反映算法的效率。如果我们想准确预估一段代码的运行时间,应该如何操作呢? 1. 确定运行平台,包括硬件配置、编程语言、系统环境等,这些因素都会影响代码的运行效率。 2. 评估各种计算操作所需的运行时间,例如加法操作 + 需要 1 ns ,乘法操作 * 需要 10 ns ,打印操作 print() 需要0 码力 | 383 页 | 17.61 MB | 1 年前3Hello 算法 1.2.0 简体中文 Rust 版
元,则收银员需要找我们 31 元。他 会很自然地完成如图 1‑3 所示的思考。 1. 可选项是比 31 元面值更小的货币,包括 1 元、5 元、10 元、20 元。 2. 从可选项中拿出最大的 20 元,剩余 31 − 20 = 11 元。 3. 从剩余可选项中拿出最大的 10 元,剩余 11 − 10 = 1 元。 4. 从剩余可选项中拿出最大的 1 元,剩余 1 − 1 = 0 元。 5. 完成找零,方案为 法的效率。最直接的方法 是找一台计算机,运行这两个算法,并监控记录它们的运行时间和内存占用情况。这种评估方式能够反映真 实情况,但也存在较大的局限性。 一方面,难以排除测试环境的干扰因素。硬件配置会影响算法的性能表现。比如一个算法的并行度较高,那 么它就更适合在多核 CPU 上运行,一个算法的内存操作密集,那么它在高性能内存上的表现就会更好。也 就是说,算法在不同的机器上的测试结果可能是 者的优劣并根据情境选择合适的方 法至关重要。 2.3 时间复杂度 运行时间可以直观且准确地反映算法的效率。如果我们想准确预估一段代码的运行时间,应该如何操作呢? 1. 确定运行平台,包括硬件配置、编程语言、系统环境等,这些因素都会影响代码的运行效率。 2. 评估各种计算操作所需的运行时间,例如加法操作 + 需要 1 ns ,乘法操作 * 需要 10 ns ,打印操作 print() 需要0 码力 | 387 页 | 18.51 MB | 9 月前3王宜国 - 基于 Rust 编程语⾔构建 Amphitheatre CLI Desktop Server 的全平台实践经验
即可实时部署到云端 进⾏测试和验收 上线 利⽤ Amphitheatre 配置⽂ 件, 执⾏标准 CI/CD ⼯ 作流,轻松发布! 开发⼯程师需要在本机安装各种编程语⾔的运⾏时和相关的框 架以及库,随着业务规模的增⻓,多语⾔多版本的维护和管理 变得越来越复杂。 技术栈杂多 研发流程⻓达⼗⼏个步骤:安装开发软件、配置环境、克隆代 码、开发、本地调试、提交代码、编译构建、⾃动化测试、部 署到测 署到测试环境、测试验收、合并代码到主线、部署到⽣产环 境… 研发流程繁⻓ 起因:开发者之痛 为了部署测试,不仅要学习容器化、Kubernetes,还要申请资 源安装配置各项中间件,学习成本⾼,费⼼费⼒ 复杂的基础设施 Build Test Code Deploy Release Test Integrate Push Inner Loop Outer Loop 戏单(正在测试中的环境) 编程语⾔ 您可以在⼀个地⽅测量项⽬中所有 语⾔以及领域中所有项⽬的可靠 性、安全性和可维护性。 从语⾔到语⾔,我们为您提供有凝 聚⼒的体验和⼀致的指标集以及数 百条静态代码分析规则。 ⽆需配置环境,⽀持多种编程语⾔和框架 Kayn Sona Redis ETCD Riven Event Account Project Activity Tariq Share NS 10 码力 | 34 页 | 10.81 MB | 1 年前3Comprehensive Rust(繁体中文)
that don't depend on libc, allocator or even the presence of an operating system. • alloc 包括需要全域堆積配置器的型別,例如 Vec、Box 和 Arc。 • 嵌入式 Rust 應用程式通常只使用 core,偶爾會使用 alloc。 16.2 說明文件測試 Rust 說明文件的主題涵蓋甚廣,包括: • help functional- style programming. • Result 是實作錯誤處理的標準型別,我們將在第 3 天的課程中介紹。 16.5 String String 是標準堆積配置的可成長 UTF-8 字串緩衝區: fn main() { let mut s1 = String::new(); s1.push_str("Hello"); println!("s1: len Display, so anything that can be formatted can also be converted to a string. 16.6 Vec Vec 是可調整大小的標準堆積配置緩衝區: fn main() { let mut v1 = Vec::new(); v1.push(42); println!("v1: len = {}, capacity = {}", v10 码力 | 358 页 | 1.41 MB | 10 月前3Comprehensive Rust(繁体中文) 202406
that don't depend on libc, allocator or even the presence of an operating system. • alloc 包括需要全域堆積配置器的型別,例如 Vec、Box 和 Arc。 • 嵌入式 Rust 應用程式通常只使用 core,偶爾會使用 alloc。 16.2 說明文件測試 Rust 說明文件的主題涵蓋甚廣,包括: • help functional- style programming. • Result 是實作錯誤處理的標準型別,我們將在第 3 天的課程中介紹。 16.5 String String 是標準堆積配置的可成長 UTF-8 字串緩衝區: fn main() { let mut s1 = String::new(); s1.push_str("Hello"); println!("s1: len Display, so anything that can be formatted can also be converted to a string. 16.6 Vec Vec 是可調整大小的標準堆積配置緩衝區: fn main() { let mut v1 = Vec::new(); v1.push(42); println!("v1: len = {}, capacity = {}", v10 码力 | 356 页 | 1.41 MB | 1 年前3
共 18 条
- 1
- 2