Prepack 介绍(译)

原文:A Gentle Introduction to Prepack (Part 1)
内容更新至:2018-12-24


注意:

计划在当前指南更完善后,将其引入 Prepack 文档中。
目前我以 gist 方式发布,以便收集反馈。

Prepack 介绍(第一部分)

如果你在开发 JavaScript 应用,那么对如下这些将 JavaScript 代码转为等价代码的工具应该比较熟悉:

  • Babel 让你能够使用更新的 JavaScript 语言特性,输出兼容老的 JavaScript 引擎的等价代码。
  • Uglify 让你能够编写可读的 JavaScript 代码,输出完成相同功能但是字节数更少的混淆代码。

Prepack 是另一个致力于将 JavaScript 代码编译为等价代码的工具。但与 Babel 或 Uglify 不同的是,Prepack 的目标不是新特性或代码体积。

Prepack 让你编写普通的 JavaScript 代码,然后输出执行地更快的等价代码。

如果这听起来让人兴奋,那么接下来你会了解到 Prepack 是如何工作的,以及你可以怎样让它做得更好。

这个指南有什么?

就我个人而言,当我最终理解 Prepack 能做什么时,我非常兴奋。我认为在未来,Prepack 会解决目前我在开发大型 JavaScript 应用时遇到的很多问题。我很想传播这一点,让其他人也兴奋起来。

不过,向 Prepack 贡献力量在一开始会让人害怕。它的源码里有很多我不熟悉的术语,我花了很长时间才明白 Prepack 做了什么。编译器相关代码倾向于使用确定的计算机科学术语,但这些术语让它们听起来比实际情况要复杂。

我编写这个指南,就是为了那些没有计算机科学背景,但对 Prepack 的目标感兴趣,并且希望帮助它实现的 JavaScript 开发者。

本指南就 Prepack 如何工作提供了高度的概括,给你参与的起点。Prepack 中的很多概念直接对应到那些你日常使用的 JavaScript 代码工具:对象、属性、条件和循环。即使你还不能在项目中使用 Prepack,你也会发现,在 Prepack 上的工作,有助于增强你对每天编写的 JavaScript 代码的理解。

在我们深入之前

相关推荐