Amove 是什么?

专为代码编译而设计,结构化执行流程,原子级别的插件化机制。

Amove 是一个代码编译底层框架,采用结构化的插件机制管理所有编译事务并以相应的规则保证所有编译事务以一种可预测的流程执行。基于 Amove 实现的编译模型可以很容易实现增量编译,热更新。

Amove 中引入了编译原子的概念,基于编译原子可以实现强大的插件功能,基于此可以将整个编译流程暴露给用户,提供强大的定制化能力,这也是 Amove 最为强大的功能特性。

什么是代码编译?

代码编译涉及软件开发的多个领域,比如编译器、解释器实现。在前端领域中,比较知名的基于编译技术实现的工具有 babel、postcss、typescript 等。

  • babel - babel 是一个 JavaScript 代码编译工具,借助于 babel 可以将 JavaScript 新特性运行在浏览器中。
  • postcss - postcss 是一款 css 编译工具,通过它可以实现单位 rem2px 的转换,自动添加前缀等功能
  • typescript - typescript 是一门静态类型的语言,其功能是 JavaScript 的超集,借助于 typescript 编译器可以将 ts 编译为常规的 js 代码从而在浏览器上运行。

除了上述例子为还有很多用到了代码编译的工具框架,比如 Angular、vue、react 等,可以说前端发展如此快速也是得益于如果多优秀的代码编译工具的支撑。

Amove 与代码编译有什么关系?

代码编译即实现编译器的过程,而这个过程是很复杂的,为了保证编译器的长期可维护就必须设计一种可用的架构来支撑,Amove 也因此而诞生,Amove 是一个帮助开发者快速实现一个编译器的工具,开发只需关心局部代码场景的转换扩充。