# 编译器

Vue3中,编译器主要负责把模板编译成渲染render函数。Vue模板属于领域特定语言(DSL)。其编译过程与通用语言的编译过程有所不同。

完整的编译过程通常包含以下步骤:

  • 编译前端】词法分析
  • 编译前端】语法分析
  • 编译前端】语义分析
  • 编译后端】中间代码生成
  • 编译后端】优化
  • 编译后端】目标代码生成

Vue模板的编译过程如下:

  • 词法分析
  • 语法分析,得到模板AST
  • 将模板AST转换成JavaScript AST
  • 根据JavaScript AST生成JavaScript代码