# 内置开发工具

## 常用命令

| 目标 | 命令 |
| --- | --- |
| 格式化 / 检查格式 | `deno fmt` / `deno fmt --check` |
| 静态规则检查 | `deno lint` |
| 类型检查模块图 | `deno check main.ts` |
| 生成 API 文档 | `deno doc --html --name=my-lib mod.ts` |
| 基准测试 | `deno bench` |
| 编译可执行文件 | `deno compile --allow-net main.ts` |
| 实验性打包模块图 | `deno bundle main.ts -o bundle.js` |

`deno compile` 会把入口与运行时打成可执行文件，但权限仍需在编译时或运行时按官方规则声明。交叉编译、动态资源和原生依赖需要单独验证。当前官方文档把 `deno bundle` 标记为实验性；构建前端应用时优先遵循框架或 Vite 的构建流程。

## 推荐任务

```json title="deno.json"
{
  "tasks": {
    "dev": "deno run --watch --allow-net main.ts",
    "check": "deno fmt --check && deno lint && deno check **/*.ts && deno test"
  }
}
```

不要把 Deno formatter 与另一套 formatter 同时作用于同一批文件。迁移仓库时先确定唯一权威工具，再做机械格式化提交。

官方参考：[Lint and format](https://docs.deno.com/runtime/lint_and_format/)、[Bundling](https://docs.deno.com/runtime/reference/bundling/)。
