1-1 ANDROID ET PLATE FORME JAVA :

1-1 ANDROID ET PLATE FORME JAVA : :

Android comporte une machine virtuelle nommée Dalvik, qui permet d'exécuter des programmes prévus pour la plate-forme Java. C'est une machine virtuelle conçue dès le départ pour les appareils mobiles et leurs ressources réduites - peu de puissance de calcul et peu de mémoire. En effet les appareils mobiles contemporains de 2011 ont la puissance de calcul d'un ordinateur personnel vieux de dix ans[7]. La majorité, voire la totalité des applications est exécutée par la machine virtuelle Dalvik.

Le bytecode de Dalvik est différent de celui de la machine virtuelle Java de Oracle (JVM), et le processus de construction d'une application est différent : le code source de l'application, en langage Java est tout d'abord compilé avec un compilateur standard qui produit du bytecode pour JVM (bytecode standard de la plateforme Java) puis ce dernier est traduit en bytecode pour Dalvik par un programme inclus dans Android, du bytecode qui pourra alors être exécuté.

L'ensemble de la bibliothèque standard de Android ressemble à J2SE (Java Standard Edition) de la plateforme Java. La principale différence est que les bibliothèques d'interface graphique AWT et Swing sont remplacées par des bibliothèques d'Android.

Le développement d'applications pour Android s'effectue avec un ordinateur personnel sous Mac OS, Windows ou Linux en utilisant le JDK de la plate-forme Java et des outils pour Android. Des outils qui permettent de manipuler le téléphone ou la tablette, de la simuler par une machine virtuelle, de créer des fichiers APK (les fichiers de paquet d'Android), de déboguer les applications et d'y ajouter une signature numérique. Ces outils sont mis à disposition sous la forme d'un plugin pour l'environnement de développement Eclipse.

La bibliothèque d'Android permet la création d'interfaces graphiques selon un procédé similaire aux frameworks de quatrième génération que sont XUL, JavaFX ou Silverlight: l'interface graphique peut être construite par déclaration et peut être utilisée avec plusieurs skins - chartes graphiques. La programmation consiste à déclarer la composition de l'interface dans des fichiers XML ; la description peut comporter des ressources (des textes et des pictogrammes). Ces déclarations sont ensuite transformées en objets tels que des fenêtres et des boutons, qui peuvent être manipulés par de la programmation Java. Les écrans ou les fenêtres (activités dans le jargon d'Android), sont remplis de plusieurs vues ; chaque vue étant une pièce d'interface graphique (bouton, liste, case à cocher…). Android 3.0, destiné aux tablettes, introduit la notion de fragments: des panneaux contenant plusieurs éléments visuels. Une tablette ayant - contrairement à un téléphone - généralement suffisamment de place à l'écran pour plusieurs panneaux.