Kotlin — não é apenas moda, é necessidade
O mundo do desenvolvimento Android está mudando rapidamente. Há cinco anos, todos escreviam em Java, e hoje Kotlin é a linguagem oficial para Android do Google. Mas apenas conhecer a sintaxe não é suficiente. Para passar em uma entrevista e conseguir uma oferta, você precisa de um portfólio em Kotlin que mostre ao empregador: você não sabe apenas ler documentação, mas criar produtos funcionais.
Neste artigo, vamos analisar cinco melhores projetos para portfólio que cobrem os requisitos mais populares em vagas: trabalho com rede, multithreading, padrões arquiteturais e UI. Cada projeto será acompanhado de exemplos reais de código e explicaremos por que ele fortalecerá seu currículo.
Por que Kotlin? Tendências 2024–2025
Se você ainda está em dúvida se vale a pena aprender Kotlin, veja as estatísticas. De acordo com pesquisas do Stack Overflow, Kotlin está entre os 5 idiomas mais amados. E o número de vagas para desenvolvedores Android em Kotlin cresce de 30 a 40% ao ano.
Além disso, Kotlin é versátil: é usado não apenas para aplicativos móveis, mas também para partes de servidor (Ktor), projetos multiplataforma (KMP) e até scripts. Portanto, projetos para portfólio em Kotlin são um investimento no futuro.
Projeto nº1: Gerenciador de tarefas com corrotinas e Retrofit
Vamos começar com um clássico — um aplicativo de gerenciamento de tarefas. Este é o projeto educacional Kotlin ideal, que permite demonstrar trabalho com API REST, bancos de dados e multithreading.
O que torna o projeto especial?
- Usa Retrofit para requisições de rede
- Implementa Kotlin Coroutines para assincronia
- Armazena dados localmente via Room
- Possui arquitetura MVVM
Exemplo de código: carregando tarefas do servidor
Aqui está um repositório simples que obtém a lista de tarefas e as armazena em cache:
class TaskRepository( private val api: TaskApi, private val dao: TaskDao) { suspend fun getTasks(): List<Task> = withContext(Dispatchers.IO) { try { val remoteTasks = api.fetchTasks() dao.insertAll(remoteTasks) remoteTasks } catch (e: Exception) { dao.getAllTasks() } }}Observe o withContext(Dispatchers.IO) — isso é a mudança para uma thread em segundo plano. Sem corrotinas, seria necessário escrever um AsyncTask complicado. Aqui, é limpo, conciso e seguro.
Por que isso é importante para o portfólio?
Os empregadores querem ver que você entende programação assíncrona e sabe lidar com erros. No código acima, tratamos elegantemente uma falha de rede e retornamos o cache — isso demonstra maturidade do desenvolvedor.
Projeto nº2: Aplicativo de clima com Jetpack Compose
O Android moderno é Jetpack Compose. Se seu portfólio contém apenas layout XML, você corre o risco de parecer ultrapassado. Um aplicativo de clima é o candidato ideal para demonstrar habilidades com Compose.
Funcionalidades principais
- Interface dinâmica com Compose
- Animações de transição
- Trabalho com geolocalização
- Uso de StateFlow para UI reativa
Exemplo de código: tela simples de clima
@Composablefun WeatherScreen(viewModel: WeatherViewModel) { val weatherState by viewModel.weatherState.collectAsState()
when (weatherState) { is WeatherState.Loading -> CircularProgressIndicator() is WeatherState.Success -> { val weather = (weatherState as WeatherState.Success).data Column(modifier = Modifier.padding(16.dp)) { Text(text = "Temperatura: ${weather.temp}°C",