Я новичок в Angular 2, поэтому исправьте меня, если я неточен.
Мое понимание Angular 1 против 2, когда дело доходит до компилятора:
В Angular 1 компилятор более общий и динамический, что означает, что грязный проверяющий код - это один код, работающий на разных компонентах. Однако для производительности в Angular 2 каждый компонент будет скомпилирован с сгенерированным кодом, который обрабатывает привязки и выполняет грязную проверку для этого конкретного компонента. Это означает, что в зависимости от шаблона компонента, более конкретно количество привязок, сгенерированный код становится больше.
Когда мы используем JIT, это не важно, поскольку этот код не проходит через сеть и генерируется в браузере. Но при использовании AOT он будет передан с сервера.
Проблема (возможно):
Когда приложение малое, AOT, безусловно, приведет к меньшей полезной нагрузке, поскольку компилятор не будет отправлен в браузер. Но по мере того, как приложение растет, я предполагаю, что эта разница начинает уменьшаться и может быть перевернута (это так?!). Но у меня нет количественного смысла. Будет ли это реальной проблемой для приложений среднего или крупного масштаба?