Dalvik VM (Virtual Machine) es la versión de Google de una VM Java (en la que se ejecutan las aplicaciones). Las máquinas virtuales mantienen las aplicaciones aisladas e independientes del hardware real y otras aplicaciones. Pero, para que esto funcione, Dalvik necesita convertir el llamado bytecode (diseñado para máquina virtual) en código de máquina nativo. Para minimizar la penalización de rendimiento que introduce la conversión de código de bytes a código nativo, se realiza un proceso llamado compilación Just-In-Time (JIT), que convierte el código de bytes caliente, es decir, de uso frecuente, en código nativo. 1
ART (Android Runtime) es un reemplazo para Dalvik que utiliza la compilación Ahead-Of-Time (AOT), lo que significa que sus aplicaciones se compilan en un estado listo para ejecutarse incluso antes de que las inicie. Esto generalmente se hace, en el momento de la instalación de la aplicación, haciendo que el proceso de lanzamiento y uso sea mucho más rápido y fluido. Y dado que esto significa que la compilación solo se realiza una vez, también puede ver una mejor duración de la batería.
Si ART tiene una mejor perspectiva de rendimiento y duración de la batería, ¿debería comenzar a usarlo?
No. Si haces eso, puedes romper las aplicaciones de terceros. Google ha enviado esta vista previa de ART con Android 4.4 para que los desarrolladores prueben sus aplicaciones en ella.
Nota al margen: el enfoque de Google con ART es vencer a iOS (las aplicaciones de iOS son nativas, por lo que funciona mejor incluso en especificaciones de hardware de gama baja), pero no sé hacia dónde se dirige ... ¿Otra fragmentación? Vea que los OEM son libres de construir dispositivos usando uno o ambos . Si bien la versión final no debería afectar a la mayoría de las aplicaciones, no es 100% multiplataforma.
1 Tenga en cuenta que JIT se agregó a Dalvik en Android 2.2