Angular 2 AOT与JIT有效载荷比较

Ali*_*ian 11 javascript jit aot angularjs angular

我对Angular 2很新,所以如果我不准确,请纠正我.

在编译器方面我对Angular 1 vs 2的理解:

在Angular 1中,编译器更通用和动态,这意味着脏检查代码是在不同组件上运行的单个代码.但是,出于Angular 2的性能考虑,每个组件都将编译为生成的代码,该代码处理该特定组件的绑定和脏检查.这意味着根据组件模板,更具体地说,绑定的数量,生成的代码变得更大.

当我们使用JIT时,这并不重要,因为此代码不通过网络并在浏览器中生成.但是当使用AOT时,它将从服务器传输.

问题(可能):

当应用程序很小时,AOT肯定会导致较小的有效负载,因为编译器不会被发送到浏览器.但随着应用程序的增长,我认为这种差异开始减少并且可能会反转(是吗?!).但我没有量化感.对于中型或大型应用来说,它会成为一个真正的问题吗?

Ale*_*net 0

解决方案是使用 LazyLoading 正确管理 AOT。

要真正给出答案,肯定会出现问题,但现在我们有了管理这些问题的工具。延迟加载是我们无法轻松应用于 AngularJS 的解决方案。

查看此链接,它制作得非常好,涵盖了有关模块、上下文和编译的整个主题: http://blog.angular-university.io/angular2-ngmodule/

您还可以将两者结合起来并充分利用它: http://blog.assaf.co/angular-2-harmony-aot-compilation-with-lazy-jit-2/

  • 将 AOT 和 JIT 放在一起是没有意义的,重点是编译器的削减,你说不要这样做。 (2认同)