Android vs iOS: con il nuovo RunTime ART Google migliora la stabilità

Salve a tutti ci ritroviamo qui seduti alla tavola rotonda di Google.Inc con Re ART-ù pronto a prendere la parola… Ma scopriamo prima la sua storia e da dove nasce:

runtime_art

Con l’arrivo di Android nella versione 4.4 KitKat, Google iniziò una fase di sperimentazione del nuovo Runtime System (termine con cui in informatica si designa quel software che fornisce i servizi necessari all’esecuzione di un programma, pur non facendo parte in senso stretto del sistema operativo)  ART  attivabile solo opzionalmente su KitKat; col tempo il “piccolo” Runtime System si conquista la fiducia dei programmatori Android, tanto da effettuare il debutto ufficiale con Android 5.0 Lollipop.

ART è un compilatore AOT (ahead-of-time) in termini profani, significa che l’intera compilazione del codice avviene durante l’installazione iniziale dell’applicazioni e non durante l’esecuzione della stessa, mentre Dalvik (il suo vecchio predecessore) è invece basato sulla tecnologia JIT (just-in-time), ovvero è un compilatore che esegue e compila il codice in linguaggio macchina in tempo reale, ad ogni esecuzione dell’applicazione stessa incidendo quindi sulle prestazioni dello smartphone (soprattutto se non un top di gamma).

android-runtime-art

Tornando al nostro “Re” ART e parlando in termini più tecnici la buona notizia è che compila le applicazione mediante l’utility dex2oat che accetta file DEX (eseguibili Dalvik) come input e genera un eseguibile compatibile con ART.

Praticamente si dovrebbe essere in grado di compilare tutti i file DEX validi senza difficoltà e dunque la maggior parte delle applicazioni esistenti verranno eseguite correttamente con una migliore gestione delle risorse e con prestazioni migliorate, niente male no?

ART-performance

Ed ecco qui che ad analizzare in maniera empirica la stabilità della piattaforma Android 5.0 e dell’effettivo utilizzo di ART ci ha pensato Crittercism, che l’ha messa a paragone con iOS 8.

crittercism

Si tratta di un’azienda che si occupa di analizzare le performance delle applicazioni mobile con l’obiettivo di offrire consulenze professionali agli sviluppatori. Crittercism riporta che il “crash rate”, ovvero la frequenza con cui si palesano crash sulle applicazioni in esecuzione, è del 2,3% su Lollipop, laddove iOS 8 fa registrare il 2,4%.


Stando ai dati della società,  l’ultima versione di Android è sensibilmente migliorata sul piano della stabilità, laddove iOS fa registrare un leggero peggioramento mentre gli ormai vecchi Android KitKat e Ice Cream Sandwich facevano segnare entrambi un crash rate del 2,6%,contro un  iOS 7  che si fermava a 2,3%.


Inoltre sempre secondo i dati di Crittercism del 2012, Android era già in vantaggio sul piano della stabilità rispetto alla piattaforma degli iPhone, anche sulle versioni meno recenti, che sia quindi l’avvento del nuovo Runtime system: ART a ridurre il Gap di stabilità tra Lollipop ed iOS 8 e di conseguenza anche l’eterna battaglia tra Android ed Apple?

A voi l’ardua sentenza!