项目实战总览:把知识点串成项链
学语言最怕一种病:"看啥都懂,写啥都懵"。语法书翻完了,所有权、借用、生命周期都认得真,可真让你从零搭一个能跑的服务,第一步就卡在"项目目录该怎么建"。项目实战治的就是这个病——它不教你新语法,而是把你会的语法按真实业务顺序组装起来。
论两个项目分别练什么
项目一:企业级 Web 后端管理系统。这是后端开发的"标配毕业设计"——用户管理、角色权限(RBAC)、部门菜单、操作日志、数据字典、系统监控。它练的是Rust 后端全栈基本功:分层架构、SQLx 操作数据库、JWT 鉴权、中间件、Docker 部署,对标 Java 世界的 SpringBoot 后台。
项目二:跨端 AI 应用系统。一个 AI 助手跑在你自己的电脑和手机上,聊天、知识库 RAG、本地 Agent,数据不出本机。它练的是Rust + AI + Tauri 全栈能力:Tauri 2.0 桌面壳、Rust 后端调 LLM、向量检索、Agent 推理循环、打包成安装包。
两个项目一静一动:第一个把后端工程规范打牢,第二个把AI 落地能力打通。合起来,你就是"能写后端、能接 AI、能出安装包"的复合型选手。
版本基线:本页所有代码基于哪些版本
Rust 生态更新快,照老教程抄代码容易因为版本 API 变动报错。本页代码以 2026 年稳定版为准,动手前先核对:
| 组件 | 版本基线 |
|---|---|
| Rust toolchain | stable 1.9x(edition 2024) |
| Axum / SQLx / Tokio | Axum 0.8 / 0.9,SQLx 0.8 / 0.9,Tokio 1.x |
| Tauri / candle / qdrant | Tauri 2.x,candle 0.7 / 0.8,qdrant-client 1.x |
技术栈选型表(2026 年稳定基线)
| 领域 | 选型 | 一句话说明 |
|---|---|---|
| 语言 | Rust stable 1.9x / edition 2024 | 编译器就是你的结对编程伙伴,版本追 stable 即可,别追 nightly。 |
| 异步运行时 | Tokio 1.x | 事实标准,axum/sqlx/reqwest 全都基于它。 |
| Web 框架 | Axum 0.8 / 0.9 | tokio 团队亲儿子,提取器(Extractor)设计是精髓。 |
| 数据库 | PostgreSQL 16+ + SQLx 0.8/0.9 | 编译期检查 SQL 的 ORM,比 MySQL 更适合企业级。 |
| 缓存 | Redis + redis-rs | 热点数据、会话、限流计数器。 |
| 鉴权 | jsonwebtoken + argon2 | JWT 双 Token,密码用 argon2 哈希(比 bcrypt 更新更安全)。 |
| 桌面壳 | Tauri 2.x | 系统 WebView + Rust 后端,安装包只有几 MB,吊打 Electron。 |
| 向量库 | qdrant-client 1.x | RAG 检索的向量存储,本地或 Docker 起一个都行。 |
| 本地推理 | candle 0.7 / 0.8 | HuggingFace 家的 Rust 推理引擎,跑 GGUF 量化模型。 |
项目开发八步走
不管是 Java 还是 Rust,正经项目的开发顺序都一样,别上来就写代码:
代码规范:让编译器和同事都爱你
Rust 官方自带两把"代码美容刀",提交代码前必须过一遍,这是全世界 Rust 项目的铁规矩:
提交前三连
clippy 平均提供 三百多条 lint 规则,每一条都是社区踩过坑总结出来的最佳实践。你写 if x == true,它会让你改成 if x;你写 collect::<Vec<_>>(),它教你用 turbofish。它不是在挑刺,是在替你把关。团队协作里,-D warnings(把警告当错误)写进 CI,谁写丑代码谁别想合并。
① 项目实战把零散知识点按真实业务顺序组装,专治"看啥都懂、写啥都懵"。
② 项目一练后端工程规范,项目二练AI 落地能力,技术栈锁 Axum + SQLx + Tauri 2.0。
③ 开发八步:需求→架构→数据库→接口→编码→测试→部署→优化;提交前 fmt + clippy + test 三连。