2024-08-13 19:44:14 +08:00
|
|
|
|
# 项目描述
|
2024-08-08 15:58:56 +08:00
|
|
|
|
轨道交通信号系统仿真模块
|
|
|
|
|
|
2024-08-19 20:45:44 +08:00
|
|
|
|
## 三种架构(先按第一种实现)
|
|
|
|
|
|
|
|
|
|
1. 服务端服务进程运行多个仿真,客户端处理显示(和之前的方式一致)
|
|
|
|
|
2. 服务端通过网络启动多个运行单个仿真的进程(可以容器启动),客户端还是只处理显示
|
|
|
|
|
3. 仿真逻辑通过WASM的形式最终打包到前端,客户端就既有逻辑又有显示(减少仿真状态的网络传输开销),后端只负责路由操作(应该和一般游戏架构类似,服务端核心在同步的处理)
|
|
|
|
|
|
2024-08-08 15:58:56 +08:00
|
|
|
|
## 环境设置说明
|
|
|
|
|
|
|
|
|
|
### 安装 Rust
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### 推荐安装的 VSCode 插件
|
|
|
|
|
|
|
|
|
|
- Dependi: Rust 包管理
|
|
|
|
|
- Even Better TOML: TOML 文件支持
|
|
|
|
|
- Better Comments: 优化注释显示
|
|
|
|
|
- Error Lens: 错误提示优化
|
|
|
|
|
- GitLens — Git supercharged: Git 增强
|
|
|
|
|
- Github Copilot: 代码提示
|
|
|
|
|
- indent-rainbow: 缩进显示优化
|
|
|
|
|
- Prettier - Code formatter: 代码格式化
|
|
|
|
|
- REST client: REST API 调试
|
|
|
|
|
- rust-analyzer: Rust 语言支持
|
|
|
|
|
- Rust Test lens: Rust 测试支持
|
|
|
|
|
- Rust Test Explorer: Rust 测试概览
|
|
|
|
|
- TODO Highlight: TODO 高亮
|
|
|
|
|
- vscode-icons: 图标优化
|
|
|
|
|
- YAML: YAML 文件支持
|
|
|
|
|
|
|
|
|
|
### 安装 pre-commit
|
|
|
|
|
|
|
|
|
|
pre-commit 是一个代码检查工具,可以在提交代码前进行代码检查。
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
pipx install pre-commit
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
安装成功后运行 `pre-commit install` 即可。
|
|
|
|
|
|
|
|
|
|
### 安装 typos
|
|
|
|
|
|
|
|
|
|
typos 是一个拼写检查工具。
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
cargo install typos-cli
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### 安装 cargo nextest
|
|
|
|
|
|
|
|
|
|
cargo nextest 是一个 Rust 增强测试工具。
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
cargo install cargo-nextest --locked
|
|
|
|
|
```
|