Meu nome é Lucas Andrade, sou estudante de Análise e Desenvolvimento de Sistemas no
Centro Universitário Senac, em São Paulo. Apaixonado por tecnologia e pela lógica da
programação, decidi criar este material pensando em quem está começando do zero e quer
aprender programação de forma simples, prática e objetiva.
Assim como você, eu também estive no ponto de partida, enfrentando dúvidas e desafios.
Por isso, desenvolvi este conteúdo passo a passo, com exemplos claros e linguagem
acessível, para que qualquer pessoa possa entender e aplicar os conceitos da programação
em Java.
Além dos conceitos, este ebook te guia na prática, construindo juntos um Gerenciador de
Tarefas, projeto que você poderá incluir no seu portfólio e usar como base para evoluir cada
vez mais na sua jornada como programador.
Vamos juntos transformar conhecimento em prática e abrir portas para o seu futuro na
tecnologia!
Lucas Andrade
Estudante de Análise e Desenvolvimento de Sistemas
Centro Universitário Senac – Santo Amaro | São Paulo – SP
LinkedIn: dev-lucasandrade
Contato: (84) 99418-7843
1 - Introdução e configuração do projeto
Descrição:
Neste capítulo, vamos entender o que será desenvolvido: um gerenciador de tarefas simples
em Java. Ele permitirá adicionar tarefas, listar, marcar como concluídas e remover. Vamos
configurar o projeto para começar a codificação.
2 - Importando bibliotecas necessárias
Descrição:
Para ler a entrada do usuário e armazenar dados, vamos importar as classes Scanner (para
entrada) e ArrayList (para listas dinâmicas).
Comentário:
ArrayList é usado para guardar as tarefas e seus status.
Scanner captura a entrada do teclado.
3 - Criando a classe principal e o método main
Descrição:
Toda aplicação Java precisa de uma classe principal e um método main que é o ponto de
entrada.
4 - Configurando o Scanner para entrada de dados
Descrição:
Vamos criar um objeto Scanner para ler dados que o usuário digitar.
5 - Criando listas para armazenar tarefas e status
Descrição:
Vamos criar duas listas: uma para armazenar as descrições das tarefas e outra para
armazenar se estão concluídas ou não (boolean).
6 - Estrutura do menu principal (do-while)
Descrição:
Vamos criar um laço do-while que mantém o programa rodando até o usuário escolher sair.
7 - Exibindo o menu para o usuário
Descrição:
Mostramos as opções do programa para que o usuário escolha o que deseja fazer.
8 - Lendo a opção do usuário
Descrição:
Capturamos o número da opção escolhida usando o Scanner.
9 - Adicionando uma nova tarefa (opção 1)
Descrição:
Se o usuário escolher a opção 1, pedimos para digitar a descrição da tarefa e adicionamos
nas listas.
10 - Listando tarefas com status (opção 2)
Descrição:
Mostramos todas as tarefas com a informação se estão pendentes ou concluídas.
11 - Funcionalidade de Marcar como Concluída
Descrição:
Antes de realizar ações como concluir ou remover tarefas, é essencial verificar se a lista não
está vazia. Isso evita erros como tentar acessar um índice que não existe e melhora a
experiência do usuário.
Comentário:
Sempre utilize este tipo de verificação antes de interações com as listas.
12 - Marcar tarefa como concluída (opção 3)
Descrição:
Permite ao usuário informar o número da tarefa para marcar como concluída.
13 - Tratando Entrada Inválida na Marcação de Tarefa
Descrição:
Se o usuário digitar um número fora do intervalo da lista de tarefas ao tentar marcar como
concluída, o programa deve alertá-lo, garantindo que não haja erros na execução.
Comentário:
Esse tratamento impede que o programa quebre ao tentar acessar uma posição inexistente.
14 - Removendo uma tarefa (opção 4)
Descrição:
Usuário informa o número da tarefa para removê-la da lista.
15 - Tratando Entrada Inválida na Remoção de Tarefa
Descrição:
Semelhante ao anterior, aqui adicionamos tratamento de erro na opção de remover tarefa,
evitando que o programa quebre se o usuário digitar algo que não seja número.
Comentário:
Esse controle garante que o programa funcione corretamente mesmo com entradas
inesperadas.
16 - Encerrando o programa (opção 5)
Descrição:
Quando o usuário escolhe 5, mostramos uma mensagem e finalizamos o programa.
17 - Tratando opções inválidas no menu
Descrição:
Caso o usuário digite uma opção que não existe, informamos que é inválida.
18 - Fechando o Scanner corretamente
Descrição:
Após sair do loop, fechamos o Scanner para liberar recursos.
19 – Resumo geral
Descrição:
Este programa cria um
gerenciador simples
detarefas, utilizando listas
para armazenar as tarefas e
seus status, e um menu para
interagir com o usuário. Ele
ensina conceitos básicos de
Java como loops,
condicionais, listas, entrada
de dados e manipulação de
arrays.
20 - Dicas para melhorias e próximos passos
Descrição:
Implementar salvamento e carregamento de tarefas em arquivos.
Melhorar a interface, usando GUI com Swing ou JavaFX.
Adicionar edição das tarefas.
Implementar ordenação das tarefas por status ou ordem alfabética.
Experimentar usar classes para representar tarefas em vez de listas paralelas.
Referências Bibliográficas
Deitel, P. J.; Deitel, H. M. Java: Como Programar. 10ª edição. Pearson.
Eck, David J. Introdução à Programação em Java - Um Abordagem Didática. Versão
online gratuita.
Oracle Documentation. The Java™ Tutorials. Disponível em:
[Link]
Loiane Groner. Curso de Java para Iniciantes. Canal YouTube e Blog Loiane Training.
W3Schools. Java Tutorial. Disponível em: [Link]
GeeksforGeeks. Java Programming Language. Disponível em:
[Link]