Comment fonctionne Android pour les programmeurs Java ?

Le développement Android est couramment un buzz dans le monde de la programmation Java. C'est Android qui garde Java à la tète du classement des langages de programmation depuis son apparition en 2007. Maintenant, quelle importance pour les programmeurs Java d'apprendre Android ? Tout dépend, si vous aimez le développement des applications et vous avez besoin d'une version mobile pour votre application, Android vous offre cette opportunité. Des millions de téléphones qui tournent sous Android sont disponibles et vont augmenter avec le temps, plus élevés que iOS de IPhone. Tous ça nous donne envie de vouloir lire davantage sur la programmation Android, et cet article parle de ça.

Ce tutoriel va vous donner un coup de pousse pour mieux comprendre comment le système Android marche ? pas détaillé mais une vue générale. Un avantage pour les programmeurs java est que l'API Android ressemble beaucoup à l'API Java. Un autre avantage est que vous pouviez utiliser les mêmes outils par exemple, utiliser l'IDE Eclipse pour développer des applications Android, en intégrant le plugin fournit par Google. Dans l'autre sens, si vous voulez aller pour le développement iOS, un grand parcours vous attend avec Objective C et le SDK iOS. Il est plus facile pour un programmeur C++ d'apprendre Objective C et iOS, qu'un programmeur Java. Donc la bataille entre Java et C++ continue avec le développement des applications pour les smartphones. Revenons à notre sujet, maintenant, voyons comment marche Android ?

Comment fonctionne Android ?

Android utilise Java pour le développement d'applications. Donc, il est nécessaires d'avoir les bases minimales en java pour pouvoir coder vos applications Android en utilisant l'API fournit par Google. Les similitudes se limitent ici, Android n'utilise pas la machine virtuelle JVM pour exécuter les fichier compilés, par contre il utilise Dalvik virtual machine, qui n'est pas une vraie JVM et qui ne traduit pas le code en byte code. Les fichiers .class sont compilés dans DVM sous l'extension DEX. Après la conversion au format DEX, les fichier .class sont mis avec d'autres ressources dans un package Android (APK) qui à la suite sera distribué et installé dans les différents smartphones. La machine virtuelle Dalvik est basée sur sur la librairie du projet Apache Harmony, ce qui veut dire qu'elle ne supporte pas toutes les fonctionnalités de l'API J2SE. Si vous utiliser l'IDE Eclipse pour coder des applications Android, alors vous n'avez pas à s’inquiéter à propos de ça parce qu'il va vous aider avec la fonctionnalité de l'auto-complete.

Comment les applications Android sont exécutées ?

Si vous êtes familier avec Linux et le traitement des processus, alors il est facile de comprendre comment les applications Android s'exécutent. Par défaut, chaque application Android à un seul identificateur fournit par le système d'exploitation Android. Après que l'application démarre, elle s'exécute dans sa propre machine virtuelle par ses propres processus. Le système d’exploitation Android gère le lancement et l’arrêt du processus de l'application, si c'est nécessaire. Cela veut dire que chaque application android s'exécute en isolation avec les autres, mais ils peuvent avoir un accès au hardware et les autres ressources système. Si vous êtes familier avec le développement mobile comme J2ME, alors vous avez peut être une idée sur les permissions. Alors quand une application est installée ou lancée, elle doit avoir les permission requises pour se connecter à internet, photos, caméra, GPS et les autres ressources système. C'est l'utilisateur qui accepte lors de l'installation et donne ces permissions à l'application, ou il refuse. tous ces permissions sont définies dans le fichier manifest.xml dans l'application Android, qui contient tous les paramètres de l'application. Les quatre composants majeur dans le développement d'une application sont: les activités (activity), les services, Content Providers et Broadcast Receivers.

Parmi ces quatre, c'est les activités qui ont une grande importance puisqu'elle sont utilisées pour gérer l'affichage dans l'écran. Une activité représente un seul écran, par exemple dans un jeu vidéo, vous pouvez avoir plusieurs écrans pour se connecter, le score, les instructions et l'écran pour jouer. Chacun de ces écrans représente un activité à l'intérieur de votre application. L'avantage, c'est que le système qui gère la création des objets Activity, quand vous voulez lancer une activité, vous devez appeler la méthode startActivity() qui prend un objet Intent. Le système crée un nouveau objet Activity ou résume l'exécution d'un objet déjà existant. Le système android a sa méthode pour ne pas gaspiller la mémoire du téléphone ou du tablette, il lance, arrête, crée et détruit les activités et les applications. Cela est le cycle de vie d'une application dans android.

Maintenant qu'on a eu une introduction générale et comment Android fonctionne, qu'est ce que vous attendez? Dès aujourd'hui, vous pouvez commencer à développer des application Android et créer votre première application HelloWorld. Vous pouvez aussi rechercher la solution sur internet quand vous rencontrez des problèmes de programmation. Tous ça vous permet d'approfondir vos connaissances petit à petit avec le temps.