Olá, pessoal! Tudo bem? Sou Alex Felipe, instrutor aqui da Alura e, neste curso, apresentarei os fundamentos de Android com Kotlin.
Audiodescrição: Alex Felipe é um homem negro de pele clara, com cabelos bem curtos e possui barba rente ao rosto. Seus olhos são castanho-escuros. Usa uma camisa cinza com mangas pretas. Está sentado em uma cadeira gamer preta.
Para este curso, assumirei que você já tenha alguns pré-requisitos:
Todos esses tópicos serão utilizados com naturalidade durante este curso. Então, se você não conhece algum desses pré-requisitos ou tem alguma dúvida, volte na descrição do conteúdo deste curso e veja quais são os cursos que recomendamos como pré-requisito. Quando você terminar esses cursos, terá a preparação necessária para iniciar este curso sem nenhum problema e aproveitar ao máximo.
Agora que passamos essas informações importantes, vamos começar a falar um pouco do que faremos durante este curso, desde a parte do produto que vamos desenvolver até a parte técnica dos recursos e tecnologias que utilizaremos.
Para isso, apresentarei a IDE que utilizaremos durante o curso, que é o Android Studio. Ela mostrará o aplicativo que vamos desenvolver: o Orgs. A ideia do aplicativo é simular uma loja virtual de produtos naturais.
Na primeira tela, um cabeçalho roxo com "Orgs" escrito no canto esquerdo, e um botão com um "+" no canto inferior direito. Nessa tela teremos uma lista de produtos, que atualmente está vazia, porque ainda não temos nenhum produto.
Caso queiramos criar um produto, interagimos com o botão do canto inferior direito, conhecido como Floating Action Button (Botão de Ação Flutuante). Clicando nele, a tela muda para um formulário com os campos "Nome", "Descrição" e "Valor". Na parte inferior da tela, temos também o botão "Salvar". Aprenderemos a adicionar essa ação de um formulário, que permitirá criar um produto. Por exemplo, queremos criar uma cesta de frutas, então preencheremos o formulário:
Cesta de frutas
Laranja, manga e morango
12,99
Em seguida, clicamos em salvar e voltamos para a tela anterior. Quando salvamos, fizemos uma ação para criar esse produto e trazê-lo para a nossa lista da tela anterior. Como podemos ver, agora temos apenas um item, é uma lista, conseguimos adicionar novos produtos. Então, clicamos novamente no "+" e criaremos um novo produto para teste, com nome "teste nome", a descrição "teste desc" e um valor de "10".
teste nome
teste desc
10
Conseguimos adicionar mais um produto. Portanto, aprenderemos como colocar vários produtos em uma estrutura que faz uma lista de componentes visuais do Android. Também aprenderemos a criar o formulário com componentes que conseguem enviar informações.
Quando clicamos nos campos do formulário, notamos também que cada um deles tem um teclado diferente: nome e descrição vêm com teclado de texto, com letras, e o valor tem um teclado numérico. Vamos aprender a fazer tudo isso. Até a parte do componente botão "Salvar", no final do formulário, que ainda acessamos quando abrimos o teclado.
São muitos detalhes que, por mais que o projeto pareça simples, vamos considerar aqui durante esses fundamentos.
Agora que falamos um pouco mais do nosso projeto, do nosso produto, vamos falar um pouco mais a respeito da parte técnica que vamos aprender em relação ao Android.
Também aprenderemos sobre o Android Studio. Teremos atividades para fazer a configuração dessa IDE e criar o primeiro projeto. Também vamos aprender os conceitos iniciais para criar a primeira tela. Descobriremos o que é uma Activity, que representa as telas que vemos no emulador.
Aprenderemos a criar um arquivo de layout, que faz toda a parte visual e se comunica a Activity. Entenderemos como organizar o nosso projeto com espaçamentos e medidas que podemos utilizar. Descobriremos como adicionar botões com ações, como os que vemo no projeto.
Nessa parte técnica, reforçaremos a ideia de fundamentos de Android. Ações, comportamentos e implementações são muito comuns para qualquer projeto Android, então, esse conteúdo é para quem está começando e quer iniciar a sua carreira como pessoa desenvolvedora Android.
Se você se identifica dessa forma, este curso é para você. Esperamos que você esteja animado ou animada com esse conteúdo e contamos com a sua presença na nossa primeira aula.
Então, vamos começar!
Antes de implementarmos nosso primeiro código Android, vamos aproveitar este momento para fazer uma introdução da plataforma. Vamos falar sobre:
O Android é um sistema operacional de código aberto (open source) baseado em Linux. Assim como temos no Windows, no Linux e no Mac, temos também o Android como um sistema operacional. Se ele é baseado em Linux, por que existe o Android, se já que existe o Linux?
É justamente porque ele foi editado, pelo menos a princípio, para atuar em dispositivos móveis, como smartphones e tablets, com uma implementação que permite que a pessoa usuária consiga interagir com o sistema utilizando os dedos, a partir de ações, toques e gestos. Esse foi o núcleo do Android, é assim que ele cresceu e se expandiu.
Sabemos o que é o Android, mas onde para onde podemos disponibilizar nossos aplicativos? Onde eles são usados? A resposta mais evidente é justamente os smartphones e tablets, mas também podemos expandir nosso conhecimento e disponibilizar para outras plataformas.
Um exemplo disso são os Wears (vestíveis), como relógios inteligentes (smartwatches), ou até mesmo outros dispositivos que utilizam o Wear OS, que é um sistema operacional para esse tipo de categoria. É um sistema da própria Google, que também dá suporte para aplicativos Android.
Só para deixar bem claro, nosso foco durante o curso é exatamente em smartphones e tablets, mas você também pode ter seu conhecimento expandido para essas outras áreas, como:
No caso de TVs, estamos falando daquelas que possuem o sistema Android OS, assim como os notebooks, que possuem o sistema operacional Chrome OS, também da Google, que roda aplicativos Android. Atualmente temos até mesmo carros que rodam aplicativos, e podemos aprofundar nossos conhecimentos para desenvolver para eles.
Uma categoria que cresce cada vez mais, e as pessoas gostam bastante, é a Internet das Coisas (Internet of Things). Essa é uma categoria de sistemas embarcados que permite fazer automações, seja em casa para abrir uma garagem com um sistema de voz, abrir uma porta ou fazer alguma tarefa de uma maneira automatizada.
Um caso de dispositivo é o Raspberry, mas existe uma grande gama desses dispositivos. Então, entenda que é possível disponibilizar aplicativo Android para esse tipo de plataforma. Essas são as plataformas atualmente que estão disponíveis e que podemos expandir nosso conhecimento a partir do que vamos aprender de smartphones e tablets.
O próximo passo é entender exatamente quais são os benefícios, além de disponibilizar para essas plataformas. Quais são as vantagens de desenvolver para Android?
A primeira vantagem está relacionada ao alcance de usuários. Isso é muito importante, porque no momento que desenvolvemos um produto, o que queremos no final das contas é atingir o máximo de pessoas possíveis.
No Android, teremos acesso à Google Play, ou Play Store, como se chama atualmente, que é a loja oficial do Android. O nome vai mudando conforme o tempo vai passando, mas entenda que é a loja oficial da Google para distribuirmos nossos aplicativos.
Por que isso tem um grande alcance? É justamente porque, atualmente, temos bilhões de dispositivos ativos nessa loja. E pode ser que aumente ainda mais no momento que você estiver fazendo esse curso, ou seja, temos a capacidade de atingir bilhões de pessoas.
É claro, isso é um número global, não é algo só do Brasil, mas entenda o potencial que isso tem. A partir do momento que você publica seu app, você consegue ter essa possibilidade. Novamente, o número é atrativo, a forma como passamos parece ser fácil, mas não é. É só uma questão de chance: pode ser que você consiga, pode ser que não. Para conseguir isso, você tem que fazer algo revolucionário, porque vai competir com todo mundo que está dentro da loja também.
O próximo benefício é dar mais possibilidades para o produto final. Além de fazer comportamentos comuns que temos em outros aplicativos, tal como o CRUD (Create, Read, Update, Delete), ou seja, inserir, alterar, remover e listar algum tipo de entidade, também podemos explorar recursos nativos do Android: Câmeras, GPS, sensores, conectividade.
Você pode fazer com que seu aplicativo tire fotos, grave vídeos, utilize o GPS para pegar a localização da pessoa usuária, ou então para indicar algum lugar que a pessoa usuária tem interesse, dependendo do seu serviço, do seu aplicativo. Pode utilizar sensores, como proximidade e sensor de biometria, enfim, são tantos sensores que nem sabemos quais são todos.
A conectividade envolve internet, NFC, Bluetooth, entre outras várias que existem. A cada vez mais o Android traz novidades, seja no próprio sistema operacional, que vai trazendo novidade a cada ano, ou então nos próprios dispositivos, vai trazendo novos hardwares que permitem fazer coisas inovadoras. Então veja que temos muito potencial ao criar um aplicativo Android, tudo vai depender da sua ideia, do quanto você vai querer se aprofundar e do que o seu aplicativo vai entregar.
Esses são os benefícios, e agora por fim vamos entender a parte dos pré-requisitos para você conseguir criar seu primeiro aplicativo.
Então o que é preciso saber para desenvolver para Android?. Basicamente, nos requisitos, temos conhecimentos sólidos em programação orientada a objetos. Isso significa que, para você conseguir fazer seu aplicativo e não ficar se perguntando porque as coisas estão sendo feitas de determinada maneira, você precisa saber de orientação a objetos. E esse vai ser o pré-requisito mais válido para você começar a criar seu primeiro aplicativo.
Pode ser em qualquer linguagem de programação, desde que você consiga associar classes, métodos, herança, interface, tudo o que está relacionado nesses pilares da orientação a objetos. A Alura tem muito conteúdo de diversas linguagens de programação orientada a objetos. A recomendação é que você faça o conteúdo voltado para Java ou Kotlin, que são as duas possibilidades que temos para desenvolver para Android.
Se você sabe de Java e Kotlin orientado a objetos, muito provavelmente você terá facilidade para aprender o Android. Claro, você pode vir de outra linguagem que utilize esse suporte, mas por questões de sintaxes, por exemplo, como funciona a JVM, talvez você tenha uma certa dificuldade de entender alguns conceitos, por isso que o recomendado é Java ou Kotlin.
Como ferramenta, vamos utilizar o Android Studio, que é a ferramenta oficial recomendada, e provavelmente a única na atualidade, para desenvolver para Android. Vamos utilizar o Android SDK, que é justamente o kit de desenvolvimento de software para conseguirmos utilizar o Android Framework, o framework que vai permitir essa criação de aplicativos.
Temos a possibilidade de duas linguagens, Java ou Kotlin, como comentamos. Durante esse curso vamos trabalhar com o Kotlin. O motivo de escolher o Kotlin é justamente porque, nesse momento que estamos gravando, o Kotlin é a linguagem recomendada pela Google e pela comunidade, então vamos chamar de "linguagem adotada".
O próprio mercado, em uma pesquisa de mercado que fizemos, já deixou bem claro que o Kotlin é a maior exigência para quem vai atuar no mundo do Android. A própria Google já deixou bem claro que todas as novidades a partir de agora terá o Kotlin como primeira opção (Kotlin First).
Então perceba que a escolha do Kotlin é muito importante para que você dê seu primeiro passo de uma maneira correta no mundo do Android, mas isso não significa que você não precisa aprender Java ou que Java é totalmente descartável e você nunca vai vê-lo nesse mundo. Talvez você veja, como legado em um projeto que trabalhe com Java.
Dica: Se você precisar de conhecimentos em Java, também temos cursos na Alura para te ajudar com isso. Que tal começar conferindo a Formação Aprenda a programarem Java com Orientação a Objetos?
Existem muitas similaridades entre as linguagens, não precisa ter essas preocupações. Aproveite esse momento com Kotlin neste curso, aprenda tudo o que você precisa aprender e, no momento que você precisar ver esses conteúdos com Java, você pode também estudar sem nenhum problema. A curva de aprendizagem não é tão grande quando você aprende uma das opções.
Agora que fizemos essa apresentação para você todas essas informações importantes, nosso próximo passo é partir para a prática. Vamos preparar o ambiente, criar o primeiro projeto e começar nesse mundo do Android.
Conto com a sua presença e com a sua participação.
Agora que tivemos uma introdução da plataforma Android, nosso próximo passo é criar nosso projeto. Para criar nosso projeto vamos utilizar o Android studio. Para acessar o Android studio após a instalação vamos em iniciar, filtramos por Android studio e então colocamos o enter. Nesse momento ele vai carregar essa tela que costumamos chamar de tela de launcher e ele vai aparecer uma tela similar a essa.
É claro, para você acessar o Android studio você precisa instalar no seu computador. E para isso temos uma atividade aqui na plataforma da Alura para você preparar o ambiente. Então se você quiser acompanhar, fazer o passo a passo junto comigo, vá na atividade, instala o Android studio para o seu sistema operacional, então acesse essa tela, que é a tela de launcher.
Agora que estamos acessando a tela de launcher é muito importante termos algumas informações. A primeira delas é que cada vez que você utiliza o Android studio ele vai ter uma versão, como é o caso dessa versão que é a 4.1.3. Muito provavelmente, dependendo do momento em que você estiver estudando pode ser que tenha uma versão mais recente. Não precisa ficar com receio, você pode instalar a versão mais recente.
A recomendação é que pelo menos você tenha uma versão que seja igual ou maior a essa que estou utilizando. Então se você estiver com a 4.1.4, por exemplo, pode utilizar sem problemas, ou 4.2, e assim por diante. A grande diferença é que conforme você utilizar uma versão mais recente algumas coisas podem mudar. Não precisa ficar assustado com isso, encare isso como um feedback positivo, pois significa que a ferramenta cada vez mais vai trazer novidade, recursos que são importantes para colocarmos no nosso aplicativo e para facilitar o desenvolvimento de uma maneira geral. Entenda isso como um ponto muito positivo no Android studio, porque por sinal já vou adiantando, o Android studio atualiza com constância, isso é muito interessante para nós.
Agora que passei essas informações para você, qual o próximo passo? É realmente criar nosso projeto, e para fazer isso vamos nessa opção, que é a ‘create new project’, que significa que vamos criar um novo projeto. Clicando nessa opção, o que vai acontecer? Logo de cara o Android studio vai permitir com que selecionemos qual a plataforma que queremos dar suporte quando estamos criando o nosso aplicativo.
Observe que em cima, nessas abas, ele mostra phone and tablet, que seriam smartphone e tablet, e ele começa a mostrar também para nós essas outras opções, como eu havia mostrado para vocês, no caso do wear os, temos o Android tv, temos o automotive, que seria dos nossos automóveis, então também temos esse Android things, que seria da internet das coisas.
Veja que conseguimos selecionar qual a plataforma que queremos, essa é a primeira opção que ele está mostrando para nós a partir dessa versão. Estou ressaltando essa questão da versão porque cada vez que muda a versão ele muda um pouco. Então essa opção para selecionar a plataforma, por exemplo, pode ser que ele coloque no final. Nesse caso está no começo. Fique atento, você não precisa se preocupar caso mude um pouco, é só você ver quais são as opções que nós configuramos, o que estamos colocando e se localizar conforme a versão que você está utilizando.
Nesse caso específico vamos utilizar a opção phone and tablet. Aqui temos essas opções nomeadas como activity. Seria na tradução atividade. O que são essas activities? Basicamente são uma entidade do Android que permite com que configuremos as nossas telas, então meio que elas são a parte de entrada do nosso aplicativo para mostrarmos nossa primeira tela.
Observe que ele tem muitos templates. Temos esse basic activity, esse bottom navigate activity, o empty activity, temos muitas opções. E qual vai ser nosso interesse nesse primeiro momento? Dado que é nossa primeira vez mexendo com o projeto Android, o ideal é que conheçamos passo a passo do que acontece no momento em que criamos uma activity.
Então o que vou fazer com vocês? Basicamente, vou utilizar a primeira opção, que é no activity, que significa que não vamos ter essa atividade, é sem nenhuma atividade, e em seguida vamos clicar em next. Qual o próximo passo? Agora precisamos nomear nosso projeto, indicar onde ele vai ficar localizado, indicar pacotes e assim por diante. Vamos pegar passo a passo dos campos e vamos adicionar os nomes conforme o que precisamos.
Nesse caso vamos trabalhar com um projeto chamado Orgs, que vai utilizar aquele template que mostrei para vocês na introdução, que é justamente esse projeto de produtos naturais. O nome do projeto podemos colocar como Orgs também. Em cima digitamos Orgs, e nesse momento que digitamos Orgs, perceba que ele modificou também o nome do pacote, como também o nome do arquivo que vai ser salvo, considerando essa configuração que coloquei de projeto.
Se eu colocasse, por exemplo, meu projeto, ele também modificaria os nomes do pacote e o nome do arquivo, ele faz essa modificação para nós. Vou deixar como Orgs. No pacote vou utilizar o pacote de domínio da Alura, que é o br.com.alura, no caso vai ter o orgs porque é o nome do projeto, e aqui vou deixar meu projeto nesse local que é onde costumo deixar meus projetos Android.
Em seguida o que temos que selecionar é justamente a linguagem, e veja que ela já tem a configuração do Kotlin por padrão, isso pode ser porque já fiz outras configurações ou porque realmente o Kotlin é considerado o padrão no Android studio. Caso esteja configurado com Java, você seleciona o Kotlin que ele já vai deixar configurado tudo para utilizarmos o Kotlin.
Em seguida precisamos fazer essa configuração também, do mínimo SDK, que seria a versão mínima do SDK que vamos utilizar do Android, que é aquele software development kit, que seria o kit para desenvolvermos para o Android. Veja que ele vai dar muitas opções para nós. São muitas opções mesmo.
O que isso significa? Significa o seguinte. Que a partir da versão que colocarmos aqui, considerando que ela é a mínima, nosso aplicativo vai ser instalável a partir dessa versão até a versão mais recente do Android que lançou nesse momento. Então seu aplicativo vai rodar pelo menos nessa versão do Android. Em versões, como é o caso da 5.0, 4.4 e para baixo nosso aplicativo não vai ser compatível.
Se ele não vai ser compatível com essas de baixo, qual versão devo escolher? Nesse momento, você pode fazer pesquisa, refletir, e pode até mesmo utilizar uma opção aqui do Android studio, que ele fala o seguinte. O seu aplicativo vai rodar em aproximadamente 92.3% dos dispositivos disponíveis nesse momento se você estiver utilizando a versão 5.1. Se fosse a 5.0 seria 94%, se fosse a 4.4W 94% de novo, se fosse a 4.4 98%.
Você pode escolher a partir dos critérios que o Android studio mostrar para você. Eu costumo utilizar essa 5.1 porque já atinge uma gama bastante interessante para nós no mercado, e também ela permite que não tenhamos tanto trabalho em algumas coisas que às vezes configuramos para manter compatibilidade com versões mais antigas. Por isso utilizo essa versão.
Caso você quiser ter mais insights, mais feedbacks sobre as mudanças que cada versão tem, você pode vir nessa opção help me choice, que seria ajude-me a escolher. E nela vai mostrando cada um dos nossos SDKs, mostra até mesmo as coisas que mudaram em cada um deles. Então indica o que teve de mudança, coisas que são mais restritivas, que são específicas a partir daquela versão, então você também pode usar essa ferramenta a seu favor.
Eu vou cancelar essa opção, vou marcar como 5.1, mas fique à vontade em deixar uma versão que você ache que é melhor para o seu aplicativo. A minha indicação dado que é a primeira vez que você está trabalhando com Android, não precisa se preocupar tanto com essa opção. Pode deixar marcado a 5.1, mais para frente em outro momento você pode também mudar para uma versão mais antiga se você preferir, ou até mesmo mais recente.
Por fim, ele mostra essa opção, que é o use legacy Android.support libraries, que seria você pode usar essa biblioteca legada, que é o Android support, vamos falar um pouco mais a respeito dela durante o curso, mas não precisa marcar, porque realmente é um legado, algo que você quer dar suporte, porque um aplicativo já funciona com essa biblioteca e você precisa ainda manter essa configuração. Então não precisa marcar, vamos usar nosso projeto sem esse legado.
Agora que passei todas essas informações, clicamos em finish¸ nesse momento o que vai acontecer? O Android studio vai criar nosso projeto. Se é sua primeira vez, ele tende a demorar um pouco mais, então não precisa se preocupar caso abra a tela, demore bastante, é normal, porque ele vai fazer downloads de muitas configurações, ele vai configurar para você os arquivos para indexar e acessar mais rápido. E assim que ele finalizar ele vai mostrar uma tela similar a essa.
Aí você pode maximizar, pode explorar um pouco do projeto, que vai ser exatamente isso que vai apresentar para você. Só para dar uma breve introdução do que ele cria, basicamente na esquerda temos nosso projeto. E aqui vamos ter acesso a esse app que representa o código-fonte do projeto. É nele que vamos acessar esse pacote que é chamado de Java que é o padrão do Android studio, que nele vamos ter o nosso código-fonte, então ele já cria algumas coisas para nós, como é o caso de um ambiente de teste para teste de unidade. Esse outro ambiente de teste para fazer testes instrumentados, que seriam testes desenvolvendo o dispositivo.
Ele já cria umas coisas para nós. É onde vamos mexer, vai ser nesse pacote que está vazio, que não tem nada. Ainda vamos trabalhar com ele, e não se preocupe por não ter criado nada, é justamente normal, dado que selecionamos aquela opção de sem nenhuma activity. Por fim, o que temos são esses arquivos de recursos que envolvem algumas coisas estáticas, como ícones, layouts, menus, etc. Ele já cria algumas coisas para nós também, vamos falar a respeito de cada um deles quando for necessário.
E também temos essa parte de Gradle scripts, que seriam scripts para fazer o processo de build para nós, caso você não tenha a mínima noção do que seja o Gradle, vou passar para você também, durante o curso, ou até mesmo na formação, um artigo mostrando o que é uma build tool, para que você fique mais atento ao que isso significa no projeto, para que você saiba e entenda a importância dele no projeto Android. Todo projeto Android vai trabalhar com o Gradle.
Agora que colocamos nosso projeto, criamos nosso projeto no Android studio, a seguir vamos partir para o passo em que vamos criar nossa primeira activity, vamos rodar nosso aplicativo e vamos ver a coisa acontecendo.
O curso Android com Kotlin: criando um app possui 297 minutos de vídeos, em um total de 93 atividades. Gostou? Conheça nossos outros cursos de Android em Mobile, ou leia nossos artigos de Mobile.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.