Основное отличие сред разработки Dalvik и ART на Android заключается в подходе к компиляции. 35
Dalvik использует JIT-компиляцию: при запуске приложения компилируется только та часть кода, которая необходима для его выполнения. 3 Остальная часть кода компилируется динамически. 3 Это замедляет запуск и работу приложений, но уменьшает время установки. 3 Приложения, работающие на Dalvik, требуют меньше памяти, чем те, которые работают на ART. 3
ART использует AOT-компиляцию: весь код компилируется во время установки приложения. 3 Это ускоряет запуск и работу приложений, но требует большего времени установки. 3 ART замедляет загрузку устройства, так как кеш создаётся во время первой загрузки. 3 В сравнении с приложениями на Dalvik, ART требует больше памяти. 3
Кроме того, ART имеет улучшенную сборку мусора (Garbage Collection) по сравнению с Dalvik: ART чистит кучу один раз для консолидации памяти, в то время как при использовании Dalvik сборщики мусора должны были осуществить два прохода по куче, что приводило к плохому UX. 34
Dalvik является устаревшим и не используется на Android версиях выше 4.4. 34 С Android 5.0 (Lollipop) Dalvik полностью заменён ART. 1