Uma das principais dúvidas de quem começa aprender a programar aplicativos é sobre Linguagem de Programação.

Hoje, existem diversos tipos de linguagens de programação para Android que são utilizadas pelos programadores para desenvolvimento de aplicativos.

O desenvolvimento Android é o processo pelo qual novos aplicativos são criados para dispositivos que executam o sistema operacional Android.

De forma oficial, o Google indica que, os aplicativos Android podem ser escritos com as linguagens Kotlin, Java e C++ usando o Android SDK, enquanto o uso de outras linguagem também é possível.

Neste artigo, vou te dar uma visão geral sobre as linguagens de programação nativas para desenvolver aplicativos Android.

O que é Linguagem de Programação

Uma linguagem de programação é uma estrutura padronizada para criar comandos para um computador. Podemos dizer que é um conjunto de regras usadas para definir um programa de computador.

A linguagem de programação permite que um programador especifique precisamente como um computador vai utilizar os dados um computador, como estes dados serão armazenados ou transmitidos e quais ações devem ser tomadas sob várias circunstâncias.

As Linguagens de programação também são usadas para construir algoritmos e fórmulas que para resulver problemas utilizando software.

O conjunto de palavras, juntamente com essas regras, formam o código fonte de um software ou aplicativo. Esse código fonte é depois traduzido para código de máquina, que é executado pelo microprocessador.

Uma das principais propostas das linguagens de programação é que os programadores tenham uma maior produtividade, permitindo criar códigos mais facilmente do que quando comparado com a linguagem que um computador entende nativamente, o código de máquina.

No caso da plataforma Android, todos os celulares que rodam o sistema operacional do Google tem uma ferramenta intermediária que ajuda a transformar uma linguagem de programação em código de máquina.

Interpretação e Compilação

Uma linguagem de programação pode ser convertida, ou traduzida, em código de máquina por compilação ou interpretação. Em ambas, ocorre a tradução do código fonte para código de máquina.

Se o método utilizado traduz todo o código do programa, para só depois executar o programa, então diz-se que o programa foi compilado e que o mecanismo utilizado para a tradução é um compilador.

A versão compilada do programa é armazenada de forma que o programa pode ser executado um número indefinido de vezes sem que seja necessária uma nova compilação, o que compensa o tempo gasto na compilação.

Se o código do programa é executado à medida que vai sendo traduzido, então diz-se que o programa foi interpretado e que o mecanismo utilizado para a tradução é um interpretador.

Embora haja essa distinção entre linguagens interpretadas e compiladas, as coisas nem sempre são tão simples.

No caso do sistema operacional Android, o código fonte Java ou Kotlin é compilado para um código de máquina virtual chamado bytecode, que depois é traduzido novamente pela Android Runtime (ART) para código de máquina do Android.

Linguagens de Programação para Android

Aprender a programar pode ser complicado e uma experiência assustadora. Na maioria das vezes, você não sabe nem por onde começar, e você provavelmente terá muitas perguntas para responder antes mesmo de começar.

Se você deseja desenvolver aplicativos Android, a primeira etapa é escolher uma linguagem de programação. As diferenças entre elas podem ser um pouco complexas e diferenciadas.

A escolha de qual linguagem de programação começar requer uma compreensão de suas forças e fraquezas individuais.

Neste artigo eu vou te passar um pouco sobre as linguagens que eu tive experiência ara você escolher a que quer começar.

Linguagem de Programação Java

Para qualquer desenvolvedor de aplicativos mobile em todo o mundo, a primeira e mais preferida linguagem de programação para um aplicativo Android é o Java, uma das razões pelas quais é simplesmente a linguagem de programação oficial para desenvolvimento de aplicativos Android

É a linguagem mais suportada pelo Google e o que a maioria dos aplicativos da Play Store são criados.

O Java foi inicialmente desenvolvido pela Sun Microsystems em 1995, e é usado para uma ampla gama de softwares. O código Java é executado por uma máquina virtual, que é executada em dispositivos Android e interpreta o código.

As vezes, o Java pode ser um pouco complicado de aprender no começo. Esse é o maior obstáculo enfrentado pelas pessoas que planejam entrar no desenvolvimento de aplicativos Android.

O Java é uma linguagem de programação orientada a objetos com vários recursos como construtores, exceções não verificadas, exceções verificadas e muito mais.

Um programador de primeira viagem pode ter dificuldades para saber o que é Java e o que é o Android! Você deverá entender também conceitos como o Gradle, o Android Manifest e XML.

Então, é a melhor linguagem de programação Android que você precisa aprender?

Definitivamente, especialmente para aqueles que querem a experiência completa de desenvolvimento Android, mergulhar no Java é o melhor lugar para começar, na minha opinião.

Linguagem de Programação Kotlin

A linguagem de programação Kotlin recentemente foi oficializada como a “outra” linguagem oficial para desenvolvimento Android.

Assim como o Java, o Kotlin é executado na Java Virtual Machine. Também é totalmente compatível com o Java e não causa nenhum obstáculo nem aumenta o tamanho dos arquivos.

A principal diferença é que o Kotlin requer menos código, o que significa que é uma linguagem de programação mais simples e fácil de ler. Ele também trata alguns erros de forma automática e não exige que você utilizar um ponto-e-vírgula no final das linhas de código.

Essa é uma excelente linguagem de programação, mas se você estiver aprendendo a desenvolver aplicativos Android pela primeira vez, ainda recomendo o Java.

O Kotlin é definitivamente uma linguagem para aprender em um futuro próximo para iniciantes, e o fato de que você ainda pode usar o Android Studio é uma grande vantagem.

Você pode aprender mais sobre o Kotlin aqui.

Linguagem de Programação C/C++

Se você me perguntar, eu não recomendaria começar a linguagem de programação C/C++ para desenvolver um aplicativo Android.

O Android Studio oferece suporte para C/C++ usando o Android Native Development Kit. Isso significa que você escreverá códigos que não são executados na Java Virtual Machine, mas sim executados nativamente no dispositivo e oferecem mais controle sobre coisas como memória.

Para aplicações mais intensas, como jogos 3D, isso permitirá que você extraia algum desempenho extra de um dispositivo Android, o que também significa que você poderá usar bibliotecas escritas em C ou C++.

No entanto, também tende a ser muito mais difícil de configurar, introduz mais bugs e é menos flexível.

Na maioria das vezes, você provavelmente não precisará usar o Android Native Development Kit. Você não deve usá-lo apenas porque prefere programar em C/C++.

Caso contrário, você deve utilizar o Java sempre que possível. O desenvolvimento de aplicativos Android usando C/C ++ é muitas vezes mais complexo do que usar Java, e muitas vezes você não ganha nada mais com isso.

Conclusão

Acho que é hora de fazer a sua escolha!

Particularmente eu sempre recomendo o Java para iniciantes, mas você pode fazer sua escolha de acordo com seu conhecimento e preferência. É você quem precisa fazer a escolha certa, e isso depende da sua sensibilidade e dos seus objetivos, mas o que quer que você decida, você precisa lembrar que aprender a programar é recompensador e isso o ajudará a crescer.

Para aqueles que estão aqui apenas para aprender sobre esses diferentes tipos de linguagens de programação para Android, agora você sabe qual linguagem seu aplicativo deve usar com base em seus requisitos.

As possibilidades de desenvolvimento Android são infinitas! Você não precisa aprender todas as linguagens de programação, apenas aprenda as que precisa para seus projetos.

Leia também


Fillipe Cordeiro
Fillipe Cordeiro

Engenheiro da computação e desenvolvedor de software a quase 10 anos, com experiência em tecnologias como Java, Python e Android. Agora, quero te ajudar a mergulhar no universo do Desenvolvimento Android.