Node

node

说用

  • 为什么把node放在前端中,主要是因为:

    • node使用javascript

    • 前端的构建工具都是基于node的

node.js 后端项目的构建工具

  • ESBuild

    • 速度极快(Go 语言编写,比 Webpack/Rollup 快 10-100 倍)。

    • 零配置支持 TypeScript、JSX、ESM/CommonJS。

    • 适合:轻量级打包、开发工具链、替代 tsc。

    • 常用场景:

  • tsup(基于 ESBuild)

    • 零配置,专为 Node.js 和 TypeScript 优化。

    • 支持 ESM/CommonJS 双格式输出。

    • 常用场景

  • Rollup

    • Tree Shaking 优化(比 Webpack 更干净)。

    • 适合 库开发(如 Lodash、Vue 等)。

    • 常用场景

  • Webpack

    • 功能最全(但配置复杂,适合前端项目)。「前端用vite,webpack有些过时了」

    • 在 Node.js 场景下 稍显臃肿,但支持高级代码拆分。

    • 常用场景

  • SWC(Rust 编写,类似 Babel)

    • 比 Babel 快 20 倍,支持 TS/JSX。

    • 适合 代码转译(不擅长打包)。

    • 常用场景

  • 不同场景下的推荐工具

  • 为什么 ESBuild/tsup 最常用?**

    1. **速度快**:比 Webpack/Rollup 快 10-100 倍,适合现代开发体验。

    2. **零配置**:无需复杂配置,开箱即用。

    3. **Node.js 优化**:默认支持 ESM/CommonJS,排除 `node_modules` 依赖。

  • 总结

    • 大多数 Node.js 项目:推荐 esbuildtsup(简单、快速)。

    • 库开发:用 Rollup(更好的 Tree Shaking)。

    • 前端+后端混合项目Webpack(但纯后端不推荐)。

    • 仅转译SWC(替代 Babel)。

# node

## 说用

- 为什么把node放在前端中,主要是因为:
  - node使用javascript
  - 前端的构建工具都是基于node的

## node.js 后端项目的构建工具

- ESBuild
  - 速度极快(Go 语言编写,比 Webpack/Rollup 快 10-100 倍)。
  - 零配置支持 TypeScript、JSX、ESM/CommonJS。
  - 适合:轻量级打包、开发工具链、替代 tsc。
  - 常用场景:
- tsup(基于 ESBuild)
  - 零配置,专为 Node.js 和 TypeScript 优化。
  - 支持 ESM/CommonJS 双格式输出。
  - 常用场景
- Rollup
  - Tree Shaking 优化(比 Webpack 更干净)。
  - 适合 库开发(如 Lodash、Vue 等)。
  - 常用场景
- Webpack
  - 功能最全(但配置复杂,适合前端项目)。「前端用vite,webpack有些过时了」
  - 在 Node.js 场景下 稍显臃肿,但支持高级代码拆分。
  - 常用场景
- SWC(Rust 编写,类似 Babel)
  - 比 Babel 快 20 倍,支持 TS/JSX。
  - 适合 代码转译(不擅长打包)。
  - 常用场景
- 不同场景下的推荐工具

- 为什么 ESBuild/tsup 最常用?**
  1. **速度快**:比 Webpack/Rollup 快 10-100 倍,适合现代开发体验。  
  2. **零配置**:无需复杂配置,开箱即用。  
  3. **Node.js 优化**:默认支持 ESM/CommonJS,排除 `node_modules` 依赖。
- **总结**
  - **大多数 Node.js 项目**:推荐 `esbuild` 或 `tsup`(简单、快速)。  
  - **库开发**:用 `Rollup`(更好的 Tree Shaking)。  
  - **前端+后端混合项目**:`Webpack`(但纯后端不推荐)。  
  - **仅转译**:`SWC`(替代 Babel)。