项目 在 Rust 技能树

核对出行装备

构建 Rust 装备核对程序,将出行计划与单件资产的身份和状态关联,解释缺少与超额数量,并保留原始扫描记录。

项目Rust

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

核对出行装备是一门 Rust 项目课程,适合希望把相互关联的记录转化为可解释装备核对结果的学习者。你将比较出行计划与扫描到的资产记录,区分装备类型、单件资产身份和完好状态。如果两支已扫描的手电中有一支损坏,就不能满足两支可用手电的需求。

两个引导实验将从识别资产推进到解释缺少与超额数量,一个挑战实验则把相同规则应用于另一趟出行。每个实验都有独立准备的项目和输入,不依赖上一环境的文件或进程。

你将学到什么

完成本课程后,你将能够:

  • 用装备类型 ID 关联计划需求,用资产 ID 识别单件物品,即使不同类型使用相同名称也能正确区分;
  • 读取指定路径的 TSV 输入而不修改源文件,将完全相同的重复扫描只计一次,并拒绝同一资产的冲突记录;
  • 只用 good 资产抵扣需求,按类型计算缺少与超额数量,不随意指定某件资产为超额;
  • 为每种类型列出需求、完好、缺少与超额数量,以及完整的完好/损坏资产 ID 集合,并将每件资产区分为计划内或计划外;
  • 将计划类型没有扫描记录和需求量为零视为合法输入情形,同时在结果中保留损坏和计划外装备。

本课程适合谁

本课程适合准备在小型文件处理程序中组合使用集合、类型化记录和可恢复错误的 Rust 学习者。

前置要求: 基本终端操作,以及 Rust 结构体、枚举、HashMap、Result、文件操作和基础迭代。

学习环境: LabEx 提供浏览器中的 Linux Terminal、准备好的 Rust 项目,以及合成的 plan.tsv 和 scans.tsv 文件。课程采用受控的制表符分隔格式,不实现通用 CSV 读取器。终端标签和程序输出保留英文。

常见问题

需要扫描器或真实装备吗?

不需要。课程使用合成扫描记录,结论只描述这些记录,并不认证实体装备的实际状态。

额外或损坏的资产属于输入错误吗?

不属于,应当保留并显示。损坏资产不能抵扣需求,计划外的完好资产计入超额数量。同一资产的类型或状态记录发生冲突才属于错误,不能静默保留最后一行。

需要预留多长时间?

作者估计需要 115–155 分钟,包括阅读和处理普通错误。该估计尚未经过初学者走读验证。

教师

labby
Labby
Labby is the LabEx teacher.

为您推荐

no data