Skip to content

Repository files navigation

rust-for-java

rust-for-java 是一个面向 Java 开发者的 Rust 学习仓库。它把“可运行的 Rust 项目”和“可拆解的学习实验”放在同一个 workspace 里,方便你一边看代码,一边跑命令,一边建立 Rust 的思维模型。

这个仓库的核心分成两部分:

  • task-domaintask-apitask-cli 组成一个小型任务系统
  • labs/java-to-rust 提供针对 Java 开发者的可运行练习

30 分钟快速上手

目标不是“看懂所有 Rust”,而是 30 分钟内把仓库跑起来,知道每个 crate 的职责,并且能改动一处代码后重新验证。

1. 确认工具链

仓库使用 stable Rust。先确认 cargo 可用:

cargo --version
rustc --version

2. 跑一遍全量测试

cargo test --workspace

这一步会验证:

  • task-domain 的领域规则
  • task-api 的 HTTP 行为
  • task-cli 的命令行行为
  • labs/java-to-rust 的练习代码

3. 启动 HTTP 服务

cargo run -p task-api

默认监听 127.0.0.1:3000。如果你需要改端口,设置 PORT

$env:PORT = 3001
cargo run -p task-api

4. 用 CLI 访问服务

另开一个终端,先看帮助:

cargo run -p task-cli -- --help

再调用健康检查:

cargo run -p task-cli -- health

5. 创建、查询、完成一轮

cargo run -p task-cli -- add "learn ownership"
cargo run -p task-cli -- list
cargo run -p task-cli -- complete <TASK_ID>

<TASK_ID> 取自 list 返回的 id 字段。

如果服务不在默认地址上,设置 TASK_API_URL

$env:TASK_API_URL = "http://127.0.0.1:3001"
cargo run -p task-cli -- list

6. 跑一个学习实验

cargo run -p java-to-rust --example ownership

如果你只做 30 分钟内最关键的事,顺序就是:

  1. cargo test --workspace
  2. cargo run -p task-api
  3. cargo run -p task-cli -- health
  4. cargo run -p task-cli -- add "learn ownership"
  5. cargo run -p task-cli -- list
  6. cargo run -p java-to-rust --example ownership

项目地图

路径 作用 你会学到什么
crates/task-domain 共享领域模型 新类型、Result、验证、thiserror、可序列化的领域对象
apps/task-api Axum HTTP 服务 路由、状态注入、JSON、错误映射、Tokio 启动方式
apps/task-cli CLI 客户端 clap 派生、环境变量、reqwest 请求、子命令
labs/java-to-rust 练习区 所有权、借用、迭代器、trait、错误、async
docs/ 学习文档 12 周路线图、Java 到 Rust 的心智映射、专项说明

建议阅读顺序

  1. 先读 docs/java-to-rust.md
  2. 再读 docs/ownership.mddocs/errors-and-types.md
  3. 然后读 docs/async-web.md
  4. 最后按 docs/roadmap.md 练 12 周

官方上游链接

这些链接是理解本仓库依赖的起点:

你应该如何使用这个仓库

  • task-domain 当成“先设计好类型,再写业务”的样板
  • task-api 当成“服务端最小可运行架构”的样板
  • task-cli 当成“Rust CLI + HTTP 客户端”的样板
  • labs/java-to-rust 当成“Java 经验迁移到 Rust”的样板

如果你的目标是成为顶级 Rust 开发者,记住一件事:

没有捷径。 你可以很快跑起来,但顶级能力只能通过长期读源码、写测试、做设计、修 bug、复盘和重复练习建立起来。

About

面向 Java 开发者的可运行 Rust 进阶课程:领域建模、Axum API、Clap CLI、Tokio 与开源源码阅读

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages