📚 Pré-requisitos Teóricos: este projeto aplica conceitos ensinados em Matriz de 20 Capítulos de Aplicações Full Stack (este módulo). Recomendado revisar antes de começar.
Guia Didático: Projeto Lista de Tarefas (Full Stack)
Este guia foi elaborado para professores e alunos iniciantes em computação. Ele apresenta o desenvolvimento de uma aplicação web completa (Full Stack) utilizando tecnologias modernas e amplamente adotadas no mercado: Spring Boot (Java) para o Backend e Angular para o Frontend.`
Ao final deste projeto, o aluno será capaz de:
—`
—`
Antes de começar, certifique-se de ter instalado:
npm install -g @angular/cli.—`
O Backend é responsável por processar as regras de negócio e salvar os dados.
backend/)src/main/java/br/com/tarefas/api: Código fonte Java.
model/: Define as entidades (ex: Tarefa).repository/: Interface de acesso ao banco de dados.service/: Regras de negócio.controller/: Recebe as requisições HTTP (GET, POST, etc.).dto/: Objetos de transferência de dados (Data Transfer Objects).src/main/resources: Configurações.
application.properties: Configurações gerais.application-dev.properties: Configurações específicas de desenvolvimento (banco H2).backend.mvn spring-boot:run "-Dspring.profiles.active=dev"
http://localhost:8088/h2-console
jdbc:h2:mem:tarefasdbsaVocê pode testar os endpoints usando o Postman ou curl:
GET http://localhost:8088/tarefasPOST http://localhost:8088/tarefas (JSON no corpo)—`
O Frontend é o que o usuário vê e interage. Ele consome a API do Backend.
frontend/)src/app/: Código fonte da aplicação.
components/: Componentes visuais (Lista, Formulário).models/: Definição dos tipos de dados (Interface Tarefa).services/: Comunicação com o Backend (TarefaService).app.routes.ts: Definição das rotas (navegação).frontend.npm install
ng serve
http://localhost:4200—`
Testes garantem que sua aplicação funciona como esperado e facilitam a manutenção.
No terminal do backend:
mvn test
Isso executará testes unitários e de integração para garantir que a API está correta.
No terminal do frontend:
ng test --watch=false
Isso verificará se os componentes e serviços do Angular estão funcionando corretamente.
—`
Tarefa (Java) e tarefa.model.ts (TypeScript). Representa os dados.TarefaController (Java). Gerencia as requisições e conecta Model e View.`A comunicação entre Frontend e Backend segue o padrão REST, utilizando verbos HTTP:
O Spring Boot (@Autowired) e o Angular (Construtor) gerenciam automaticamente as dependências das classes, facilitando o desacoplamento e os testes.
—`
prioridade (Alta, Média, Baixa) na Tarefa. Atualize o Backend (Model, DTO, Controller) e o Frontend (Interface, Formulário).Bom aprendizado! 🚀
—`
No seu editor/IDE, abra a pasta deste projeto (File > Open Folder) ou navegue via terminal:
cd fullstack_tarefas_07_spring_angular
./mvnw spring-boot:run
# No frontend: npm install && npm run dev
[!TIP] Dica para execução a partir da raiz do repositório: Se você abriu o repositório completo no VS Code, basta navegar até a pasta antes de executar: cd proj_aplicacoes_full_stack/projetos/fullstack_tarefas_07_spring_angular