Je sais qu'Android utilise le langage Java avec un SDK Java limité et que Google prétend que ce n'est pas Java. Mais est-il juste de dire qu'Android est un langage de programmation? Ou est-il plus juste de dire qu'Android est un framework en Java? Ou est-ce vrai?
13
Réponses:
Android est un système d'exploitation (et plus, regardez ci-dessous) qui fournit son propre cadre. Mais ce n'est certainement pas une langue.
De developer.android.com
la source
Android n'utilise pas le langage Java. Il dispose d'un processus de compilation hors ligne qui traduit le bytecode JVM en bytecode Dalvik qu'Android comprend, mais rien qui vient avec Android ne comprend directement ou ne fonctionne avec Java. Au lieu de cela, vous utilisez d'autres outils existants pour compiler Java (ou tout autre langage JVM) en bytecode, puis remettez-le à Dalvik pour faire le reste du chemin.
la source
Java est simplement la langue de choix prise en charge pour le développement Android. Google a choisi de créer un SDK pour le langage Java et un plugin pour le populaire IDE Eclipse Java, il y avait donc un ensemble d'outils facilement disponibles pour créer des applications Android dans un langage populaire.
La partie déroutante ici est que Java le langage et Java la machine virtuelle sont deux choses différentes. Lorsqu'un programme Java standard s'exécute sur votre PC, il exécute du code qui a été compilé en code octet destiné à être exécuté dans la machine virtuelle Java de Sun Microsystems. Fondamentalement, Android a sa propre machine virtuelle qui exécute également du code octet. Lorsque vous exécutez et l'application Android, son code en cours d'exécution qui a été compilé dans le code d'octet que la machine virtuelle Android comprend. Ainsi, bien que Java soit la langue de choix, vous pouvez techniquement écrire des applications Android dans n'importe quelle langue à condition d'avoir les moyens de la compiler en code octet Android. (Bien que je ne pense pas qu'il existe d'outils pour d'autres langues)
la source
dx
peut être exécuté sur n'importe quel bytecode JVM: Java, Jython, Scala, faites votre choix . L'automatiser impliquerait principalement de modifier les règles Ant.Android est une plate-forme open source gratuite accessible à tous. Le système d'exploitation Android est un système Linux multi-utilisateurs dans lequel chaque application est un utilisateur différent. Et Android s'appuie sur Linux version 2.6 pour les services système de base tels que la sécurité, la gestion de la mémoire, la gestion des processus, la pile réseau et le modèle de pilote.
la source
Android est une pile logicielle open-source (une pile de solutions est un ensemble de sous-systèmes logiciels ou de composants nécessaires pour fournir une solution entièrement fonctionnelle, par exemple un produit ou un service) pour les appareils mobiles qui comprend un système d'exploitation, un middleware et des applications clés. Vous avez donc partiellement raison de le considérer comme un cadre.
la source