Mesmo que você não pense que estamos totalmente em uma era pós-PC, é claro que as plataformas móveis desempenham um papel essencial em muitas partes de nossas vidas. Seja para diversão ou lucro, desenvolver aplicativos Android pode ser recompensador, tanto pessoal quanto financeiramente. Supondo que você tenha um certo nível de conhecimento técnico, é possível desenvolver aplicativos Android sozinho, mas quais linguagens de programação você precisa aprender?
Tutorial do Android SDK para iniciantes
Android SDK agora tem suporte para Marshmallow
A linguagem oficial para o desenvolvimento Android é Java. Grandes partes do Android são escritas em Java e suas APIs são projetadas para serem chamadas principalmente de Java. É possível desenvolver aplicativos C e C ++ usando o Android Native Development Kit (NDK), mas não é algo que o Google promove. De acordo com o Google, “o NDK não beneficiará a maioria dos aplicativos. Como desenvolvedor, você precisa equilibrar seus benefícios em relação às desvantagens. Notavelmente, o uso de código nativo no Android geralmente não resulta em uma melhoria de desempenho perceptível, mas sempre aumenta seu aplicativo complexidade. ”
Java
O trabalho dessas máquinas virtuais é interpretar o bytecode.
Java é uma linguagem de programação lançada pela Sun Microsystems em 1995 . Ele pode ser encontrado em muitos tipos diferentes de dispositivos, de smartphones a computadores mainframe. Você pode usá-lo em seu PC de mesa e até mesmo no Raspberry Pi. Java não compila para código de processador nativo, mas depende de um “virtual machine ”que entende um formato intermediário chamado bytecode Java. Cada plataforma que executa Java precisa de uma implementação de máquina virtual (VM). No Android, a VM original é chamada Dalvik. O Google também começou a visualizar sua próxima geração de VM chamada ART. O trabalho dessas máquinas virtuais é interpretar o bytecode, que na verdade é apenas um conjunto de instruções semelhantes ao código de máquina encontrado nas CPUs, e executar o programa no processador. As VMs usam uma variedade de tecnologias, incluindo compilação just-in-time (JIT) e compilação antecipada (AOT) para acelerar os processos.
Deve ler: tutorial Java para iniciantes
O que tudo isso significa é que você pode desenvolver aplicativos Android no Windows, Linux ou OS X e o compilador Java converte o código-fonte em bytecode. Isso, por sua vez, é executado na VM integrada ao Android. Isso é diferente do modelo usado pelo iOS, que usa um compilador nativo para transformar Objective-C em código de máquina ARM.
Interessado em ler mais? Confira o artigo original em Android Authority.