Nas últimas edições da Revista Carreira TI apresentamos a metodologia de autodesenvolvimento pessoal e profissional por meio das Trilhas de Aprendizagem. Imagine que você decidiu criar sua própria Trilha de Aprendizagem para expandir seus conhecimentos em desenvolvimento para Aplicativos Móveis para Android.
Que profissional você quer se tornar? Um Android Product Engineer ou um Android Systems Engineer?

O profissional conhecido por Android Product Engineer é um desenvolvedor Android que se concentra na construção de aplicativos Android a partir de uma perspectiva de produto. É o responsável por projetar, desenvolver, manter e dimensionar vários módulos de um aplicativo móvel. É uma pessoa de tecnologia orientada para a pesquisa que pode assumir a responsabilidade de construir e liberar entregas do aplicativo móvel.

O Android Systems Engineer é um desenvolvedor Android que cria aplicativos para dispositivos móveis no sistema operacional Android a partir de uma perspectiva de sistema. Ele conhece as bibliotecas de Interface dos Usuários (IU), o Android Studio e conhece o Android por “dentro e por fora”. Faz as escolhas de design de alto nível para a estrutura de software, frameworks, protocolos e algoritmos. Determina as práticas de codificação, as ferramentas de desenvolvimento e
requisitos de validação.
Quais são as habilidades necessárias para ser um desenvolvedor Android? Os desenvolvedores Android precisam conhecer as linguagens de programação Java ou Kotlin, bem como as várias bibliotecas e estruturas para se conectar ao sistema operacional Android.
Alguns desenvolvedores preferem usar outras estruturas, como React Native, que permitem escrever partes de um aplicativo Android em Javascript e torná-lo mais semelhante ao desenvolvimento de um front-end para web.
Então, por onde começar?
Quais os conhecimentos iniciais necessários? Tutoriais? Cursos? Vídeos do Youtube? Quais linguagens? Quais ferramentas
utilizar? Como testar os códigos?

Quais são os conhecimentos necessários a um profissional desenvolvedor para Android?
Antes de sair pesquisando à revelia, procure organizar o aprendizado por caminhos compatíveis com um aprendizado factível e realizável.


Esta trilha sugere alguns desses possíveis caminhos…

  1. Escolher uma Linguagem;
  2. Conhecer os Fundamentos Principais da Linguagem;
  3. Aprender sobre os Sistemas de Controle de Versão;
  4. Aprender sobre os Serviços de Hospedagem de Repositórios;
  5. Aprender a construir uma aplicação;
  6. Continuar aprendendo…

1.Escolher uma Linguagem As linguagens de programação mais utilizadas para o desenvolvimento de Apps Android são Java e Kotlin. Prefira Kotlin, porque o Google a selecionou em 2019 como linguagem “preferida” para desenvolver aplicativos Android. Para quem vai começar a “desenvolver do zero”, Kotlin deve ser a opção.

2. Conhecer os Fundamentos Principais da Linguagem Para aprender os fundamentos da linguagem Kotlin:

  • Instalar o ambiente de desenvolvimento (IDE) Android Studio
  • Aprender os fundamentos básicos do Kotlin e de Programação Orientada a Objetos
  • Aprender Estrutura de Dados e Algoritmos em Kotlin
  • Conhecer as bibliotecas do Kotlin
  • Kotlin Standard Library
  • Conhecer o ambiente Gradle – ferramenta de automação de compilação de código aberto projetada para ser flexível o suficiente para criar quase qualquer tipo de software.

3. Aprender sobre Sistemas de Controle de Versão Os Sistemas de Controle de Versão são ferramentas de software que ajudam o desenvolvedor e as equipes de desenvolvimento a gerenciarem as alterações ao código-fonte ao longo do tempo.
Esses sistemas registram as alterações do código-fonte e permitem recuperar versões específicas, posteriormente. O sistema mais comum em uso pelos desenvolvedores é o Git.

4. Aprender sobre os Serviços de Hospedagem de Repositórios Há dezenas de serviços para hospedar os repositórios Git.
Procure conhecer os fundamentos básicos sobre o Git e crie seu perfil em um deles.

  1. Aprender a construir uma aplicação

Aqui entra o aprendizado “hands on”, ou “mão na massa”.

  • Conhecer as Classes Atividades e Ciclos de Vida de Atividades (Activity)
  • Conhecer as Interfaces flexíveis usando fragmentos (Fragment)
  • Saber fazer a manipulação de configurações de aplicativos (Set up managed configurations)
  • Aprender a depuração usando o Android Studio Debugger
  • Usar Intents e filtros de Intents (objetos de mensagens)
  • Usar o contexto (Context)
  • Aprender sobre multithreading (tarefas em segundo plano)
  • Aprender a proteger os dados dos usuários (Data Privacy)
  • Aprender a proteger os dados que transitam em rede (Secure Network Data).
  • Aprender sobre a Injeção de dependência no Android (reutilização, refatoração e teste)
  • Aprender a usar os Provedores de Conteúdo (Content Providers)
  • Aprender a usar bibliotecas de terceiros (como Glide, Retrofit, Crashlytics, GSON…)
  • Aprender sobre o Gerenciamento de Memória (Mmapping)

O que achou da Trilha de Aprendizagem de Desenvolvedor Android?
É desafiadora ou frustrante? Essa trilha não se esgota por si própria e nem é limitante.

Para que a Trilha de Aprendizagem cumpra seus efeitos, ela deve ser convidativa a vencer os desafios. Lembre-se que a disciplina é um fator preponderante para quem busca o autodesenvolvimento pessoal e profissional.
Como sugestão faça o Curso Gratuito sobre como Desenvolver Apps Android com Kotlin, na plataforma de Educação a Distância Massive Open On-line Course (MOOC) da Udacity.
Segue o link: Developing Android Apps with Kotlin (udacity.com)
Boa sorte!
Depois conte pra gente o seu feedback sobre esta Trilha de Aprendizagem!

Você pode ler a revista online aqui no site ou realizar o download. Para isto basta acessar o menu superior Edição Atual e Anteriores, escolher o ano, rolar a página para encontrar a edição desejada. Clicar no botão Ler Online ou Download.

Ew Sistemas TI.