El ARTe de Android

Sin lugar a dudas Android 4.4 KitKat fue la perfección del propio sistema en su máximo nivel. Trajo consigo docenas de nuevas características, y su consumo de memoria disminuido permitió ser portado a dispositivos más antiguos con mucha facilidad. Una de las características más interesantes ocultas en el interior de sus opciones de desarrolladores es ART, un nuevo compilador en tiempo de ejecución a punto de reemplazar a nuestro buen amigo Dalvik.

 

¿Qué es ART y por qué deberías interesarte al respecto?

Android usa una máquina virtual para ejecutar código, lo cual sabemos que no es la solución perfecta. Y debido a esto, sus dispositivos necesitan más recursos que, por ejemplo Windows Phone, para poder correr cómodamente. Dalvik, que es el tiempo de ejecución por defecto, no es más que el software que se encarga de correr las aplicaciones de Android. Desde Android 2.2 Dalvik ha utilizado un compilador Just-In-Time (Justo-A-Tiempo por su traducción) para interpretar bytecode desde Java. Los programas escritos en Java son convertidos por ende de un tipo de archivo de Java al ejecutable de Dalvik (.dex) antes de instalarlo en el dispositivo. Un odex es básicamente una versión pre-procesada del archivo classes.dex de una aplicación dada que está lista para su ejecución en Dalvik. Cuando una aplicación es odexed, se le elimina el archivo classes.dex del archivo APK, y nada es escrito dentro del caché de Dalvik. Una aplicación no es odexed cuando termina con dos copias del archivo classes.dex: el primero es el incluido dentro del APK y el segundo es el que se procesa dentro del caché de Dalvik. La primera vez se toma algo de tiempo en ejecutarse debido a que Dalvik tiene que extraer y procesar el archivo classes.dex.

Para tenerlo en cuenta como referencia, el nombre de Dalvik proviene de la villa pesquera Dalvík en Eyjafjörður, Islandia. Dicho lugar es de donde provienen los ancestros de Dan Bornstein (el creador de Dalvik).

No debe quedar una sola duda ante el hecho de que Dalvik es un excelente proyecto. De hecho en mi opinión, para la velocidad en que gira el mundo por estos días, que un proyecto se mantenga por tanto tiempo de manera ininterrumpida, sin competencia ni nada que se le pare al lado, pues es un logro de esos que muy poco se logran ver hoy. Solo que “a todo santo le llega su hora”, como sentencia ese refrán de antaño. Y en este caso, el equipo de desarrollo oficial de Android ha decidido pasarse a un compilador de ejecución de tiempo un poco más robusto diría yo: ART. Este nuevo tiempo de ejecución utiliza un compilador Ahead-of-Time, dónde el bytecode es precompilado dentro de una máquina de lenguaje al mismo tiempo que una instalación. Ello explica por lógica el por qué las aplicaciones instaladas con ART activado toman más tiempo para instalarse y mucho menos en ejecutarse. Cabe resaltar que con éste nuevo método las aplicaciones ocupan algo más de espacio, pero no es algo que detone preocupación ya que hoy en día el equipo que menos almacenamiento posee, es de 16GB.

ART fue introducido como una característica experimental en Android 4.4. En su forma actual, ART no es inmensamente más rápido que Dalvik en todos los benchmarks. Sin embargo, debemos tener en cuenta que este proyecto aún navega dentro de su líquido amniótico, por ende su optimización plena tomará aún algo de tiempo.

De acorde a los rumores, y a que el hecho de que su perfeccionamiento cada día avanza más, se dice que ART reemplazará a Dalvik en la próxima versión de Android. Dalvik quedaría disponible como una máquina virtual alternativa que nos sirva como puente de compatibilidad con aplicaciones viejas. No sé si te hayas percatado, pero algunas aplicaciones tuvieron serios problemas de compatibilidad cuando salió Android 4.4 (WhatsApp fue una de ellas). No obstante, todo se resolvió con una velocidad voraz y ahora la compatibilidad con ART es en un 99% absoluta.

ART es sin dudas un proyecto bien ambicioso que vale toda la pena del mundo tratar. Es importante destacar que tiene algunas cosas en contra como el crecimiento del tamaño de las aplicaciones, algo que es circunstancial y relativo, pero que definitivamente hay que mencionar. Dicho esto, las palabras sobran, solo esperemos que en el futuro el equipo oficial de desarrollo de Android logre hacer ARTe de verdad.

Dejar un comentario

Your email address will not be published. Required fields are marked *