Che cos’è Android?


Grazie a Google, Android ha attualmente invaso i nostri smartphone, tablet, e in generale tutti i dispositivi mobili. Per tutti gli sviluppatori questo ha costituito una nuova frontiera, un nuovo modo di pensare al “cellulare” come qualcosa di estremamente dinamico e allo stesso tempo in grado di utilizzare gran parte delle nuove tecnologie hardware e software. In questo articolo cercheremo di capire dove è nato questo “linguaggio” e com’è diventato così famoso.

Come avete notato il termine linguaggio riferito ad Android è stato virgolettato proprio perchè quando ne parliamo non intendiamo soltanto un linguaggio di programmazione ma anche una serie di strumenti e librerie che lo costituiscono.

Android, per prima cosa è open per la licenza scelta che è la Open Source Apache License 2.0 che permette di sviluppare applicazioni senza pagare alcuna royalty, utilizza un Kernel di Linux nella versione 2.6. e il codice sorgente è disponibile per qualsiasi programmatore che lo volesse modificare.

Il nuovo sistema Android di Google nasce dalla Società Android Inc nata nel lontano 2003 da Andy Rubin, Rich Miner, Chris White e Nick Sears i padri fondatori. Nel 2005 Google acquistò Android Inc e successivamente alcune aziende delle telefonia mondiale istituirono l’Open Handset Alliance (abbreviato OHA) cioè un accordo per lo sviluppo di standard aperti per i device mobile.

Nell’anno 2007 Google mette a disposizione degli sviluppatori la prima versione del Software Development Kit (SDK) e nell’anno successivo sul G1 di T-Mobile le applicazioni di Android potevano essere utilizzare e “testate” su un vero dispositivo. Sempre nell’anno 2008 fu rilasciato il codice sorgente di Android con la licenza Apache e questo costituì una pietra miliare nello sviluppo delle applicazioni per il nuovo sistema di Google.

Verso il termine dell’anno 2008 un dispositivo di test, il Dev Phone 1 fu prodotto per dare la possibilità ai programmatori di iniziare a sviluppare con Android ad un costo contenuto.

Risulta curioso come tutte versioni del sistema operativo Android dalla 1.5 siano nomi di dessert.

Con la versione SDK 1.5 (Cupcake) rilasciata nel 2009 la tastiera fisica è stata sostituita da una tastiera virtuale, un notevole passo in avanti poiché ora lo smartphone poteva essere di dimensioni e costi più contenuti.

Ecco un bel cupcake!

Figura 1.
(A cosa hanno pensato gli sviluppatori di Google per la versione cupcake?)

La nuova versione dell’SDK 2.2 (Froyo) fu annunciata durante la Google IO Conference di San Francisco nel maggio del 2010. La modifica più importante fu l’introduzione del JIT (Just-In-Time-Compiler) per la Dalvik Machine che ha costituito un altra passo fondamentale dal punto di vista delle performance e ha permesso una maggiore velocità delle applicazioni migliorando l’interattività con l’utente. Da alcuni benchmark, rispetto alla versione 2.1, la versione 2.2 di Android è più veloce dalle due alle cinque volte come descritto da un articolo presente al seguente link  Android 2.2 vs Android 2.1

Infine, oltre all’implementazione nativa del tethering, grazie al JIT, è stato possibile il supporto alle applicazioni Adobe Flash 10.1 direttamente dal Browser e alle migliaia di giochi  funzionanti con tale linguaggio.

Froyo: altro nome per Android
Figura 2.
(Froyo: il gelato allo yogurt)

L’SDK 3.0 (Honeycomb) ha introdotto il supporto per i tablet e quindi ha in un certo senso reso più complesso l’utilizzo delle diverse versioni da parte dei costruttori dei dispositivi mobili. In questa versione è stato implementato il supporto “full” 2D all’accellerazione hardware consentendo una migliore esperienza visuale ed interattiva dell’utente. Inoltre, con questa versione, il sistema operativo di Google supporta ufficialmente i processori multi-core.

dessert al miele

Figura 3.
(Honeycomb: il dessert al miele)

L’avvento della versione SDK 4.0 (Ice Cream Sandwich) ha unificato le API sia per i smartphone che per i tablet semplificando il processo di sviluppo. Per la prima volta, compare un nuovo font di sistema ottimizzato per i display mobili ad alta risoluzione: Roboto. Quest’ultimo, rimpiazzerà il font Droid Family in uso nelle versioni precedenti. Il tutto è inserito in una nuova esperienza visuale per l’utente, un nuovo tema disponibile per tutti i dispositivi Android: Holo. Inoltre, da ora in poi, sono ufficialmente supportati i sensori di temperatura e di umidità. Queste, sono solo alcune delle modifiche introdotte dalla versione SDK 4.0.

icecreamsandwich android

Figura 4.
(La versione 4.0, a cosa si ispira?..)

Dopo poco tempo, nel luglio 2012 la nuova versione SDK 4.1 (Jelly Bean) ha consolidato la nuova esperienza visuale grazie ad Holo, il tema introdotto con la versione 4.0. Inoltre, sono state aggiunte delle nuove API per gli sviluppatori. In sintesi, si tratta di una versione di “minor update e di bugfix”.

Jelly Bean Android 4.1

Figura 5.
(La versione 4.1 di Android: migliaia di gelatine a disposizione!)

Il 31 ottobre 2013 è stata rilasciata da Google la nuova versione SDK 4.4 (KitKat). La novità più importante, è l’introduzione del nuovo system runtime software Android Runtime (ART) che sostituirà nella versione 5.0 la ormai “vecchia” e obsoleta Dalvik Machine creata da Dan Bornstein. Questo passaggio permette un aumento delle prestazioni in seguito ad una “scomparsa” della compilazione delle applicazioni in runtime.

Art runtime Android Architettura

Figura 6.
(ART: uno sguardo d’insieme)

Finalmente, il 12 novembre 2014 ha fatto la comparsa la nuova versione SDK 5.0 (Lollipop). Ufficialmente, la Dalvik Machine è stata sostituita dal nuovo sistema Android Runtime. In questa versione sono state aggiunte cinquemila nuove API, un bel pacchetto di funzionalità che ha fatto felici numerosi programmatori. Infine, con il progetto “Volta” si è riusciti a rendere più efficiente il consumo energetico.

Siamo giunti all’ultima versione la SDK 6.0 (Mashmallow) introdotta nell’ottobre 2015. In questa versione sono state aggiunte nuove API per gli sviluppatori e nuove funzionalità a livello di “power management” e “fingerprint ricognition” oltre a  numerose altre funzionalità.

Infine, la prossima versione SDK 7.0 (Nougat) promette bene. Nel nuovo upgrade, si potranno visualizzare più applicazioni contemporaneamente sullo schermo e il tutto sarà supportato dalle nuove API per la visualizzazione grafica “Vulkan“.

Il primo articolo sul sistema operativo più famoso al mondo è giunto al termine, e ora, non potere dire di non saper nulla di Android!

Se vi è piaciuto e volete contribuire al miglioramento di questo articolo inviate un  bel pò dei vostri Bitcoin al seguente indirizzo:

Indirizzo BTC: 3EJZiSmqRkoZ48ae2pYbKupMYQqoQvxdxe

Codice QR Bitcoin

e mi raccomando: commentate e votate l’articolo!

No votes yet.
Please wait...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

quattro + tre =