Este cronograma cobre 4 semanas de estudo focado em JavaScript, Estruturas de Dados, Back-end, API REST, Node.js, Express e Arquitetura de Projetos.
Cada semana possui 5 dias de aprendizado, 2 dias de revisão e um projeto prático no 8º dia.
📌 Conteúdo:
- Métodos de arrays:
map()
,filter()
,reduce()
,forEach()
. - Desestruturação de objetos e arrays.
- Operador spread/rest.
🔗 Recursos:
📝 Exercícios:
- Criar uma função que filtra números pares de um array.
- Criar uma função que soma os valores de um array de objetos.
📌 Conteúdo:
- Promises e como lidar com
then()
ecatch()
. - Async/Await e tratamento de erros com
try/catch
.
🔗 Recursos:
📝 Exercícios:
- Criar uma função assíncrona que busca dados de uma API pública.
- Criar uma função que simula um tempo de espera usando
setTimeout
ePromise
.
📌 Conteúdo:
- Classes e herança.
- Encapsulamento e métodos privados.
🔗 Recursos:
📝 Exercícios:
- Criar uma classe
Carro
com propriedades e métodos. - Criar uma classe
ContaBancaria
com depósitos e saques.
📌 Conteúdo:
- Conceitos de pilhas e filas.
- Implementação em JavaScript.
🔗 Recursos:
📝 Exercícios:
- Criar uma estrutura de Pilha (Stack) com push e pop.
- Criar uma Fila (Queue) com enqueue e dequeue.
📌 Conteúdo:
- Bubble Sort, Merge Sort e Quick Sort.
- Busca Linear e Binária.
🔗 Recursos:
📝 Exercícios:
- Implementar Quick Sort.
- Implementar Busca Binária.
📌 Atividades:
- Resolver desafios no Codewars.
- Criar um resumo dos conceitos aprendidos.
📌 Descrição:
Criar um sistema de gerenciamento de tarefas usando apenas arrays e objetos.
🔹 CRUD (Create
, Read
, Update
, Delete
)
📌 Conteúdo:
- O que é Node.js.
- Criando e utilizando módulos no Node.js.
🔗 Recursos:
📝 Exercícios:
- Criar um módulo que exporta uma função matemática.
📌 Conteúdo:
- Lendo e escrevendo arquivos com
fs.readFile
efs.writeFile
.
🔗 Recursos:
📝 Exercícios:
- Criar um script que lê e escreve um arquivo JSON.
📌 Conteúdo:
- O módulo
http
e a criação de um servidor básico.
🔗 Recursos:
📝 Exercícios:
- Criar um servidor que retorna "Olá, mundo!".
📌 Conteúdo:
- Instalando e configurando um servidor Express.
- Criando rotas (
GET
,POST
).
🔗 Recursos:
📝 Exercícios:
- Criar um servidor com Express que retorna uma lista de produtos fictícios.
📌 Conteúdo:
- Criando uma API RESTful simples.
🔗 Recursos:
📝 Exercícios:
- Criar um middleware que registra as requisições no console.
📌 Atividades:
- Resolver desafios de código no LeetCode.
📌 Descrição: Criar uma API REST simples para gerenciar notas.
📌 Conteúdo:
- Métodos HTTP: GET, POST, PUT, DELETE.
- Criando um CRUD básico com Express.js.
🔗 Recursos:
📝 Exercícios:
- Criar um CRUD para gerenciar tarefas.
📌 Conteúdo:
- Introdução ao SQLite/PostgreSQL.
- Criando tabelas e inserindo dados.
🔗 Recursos:
📝 Exercícios:
- Criar um banco de dados SQLite e popular com dados.
📌 Conteúdo:
- Integrando Express.js com banco de dados.
- Manipulando registros (SELECT, INSERT, UPDATE, DELETE).
📝 Exercícios:
- Criar uma API que busca usuários do banco de dados.
📌 Conteúdo:
- Implementação de login e autenticação via JWT.
🔗 Recursos:
📝 Exercícios:
- Criar um sistema de login básico com JWT.
📌 Conteúdo:
- Arquitetura MVC e boas práticas.
🔗 Recursos:
📝 Exercícios:
- Reestruturar um projeto Express seguindo o padrão MVC.
📌 Atividades:
- Resolver exercícios no Codewars.
- Refazer exercícios sem olhar a solução.
📌 Descrição: Criar uma API de gerenciamento de usuários com autenticação. 🔹 Utilizar Express.js e PostgreSQL. 🔹 Implementar autenticação com JWT.
📌 Conteúdo:
- Proteção contra ataques (CORS, Helmet).
🔗 Recursos:
📝 Exercícios:
- Implementar proteção CORS em um projeto.
📌 Conteúdo:
- Introdução a testes automatizados.
🔗 Recursos:
📝 Exercícios:
- Escrever testes para um CRUD existente.
📌 Conteúdo:
- Deploy no Railway/Vercel.
- Logs e monitoramento.
🔗 Recursos:
🔹 Criar uma API completa com autenticação e deploy.