Neste vídeo, é informado que houve atualizações e, nos orienta a realizar um clone de um projeto já alterado e atualizado.
Ficou com uma vasta falta de clareza, dos motivos das atualizações, tanto como a falta de informações do que foi alterado.
Ao comparar um projeto com outro, houve mudanças significativas, com novos elementos, e isso teria sido bom, se tivesse sido explicado ou alterado em vídeo, para melhor esclarecimento e aprendizado dessa refatoração.
Ficou parecendo uma troca as pressas do tipo: joga ai a aplicação atualizada e, esta tudo certo.
Poderiam ao menos ter criado na transcriação da aula, uma pequena documentação com todas as alterações e mudanças e seus motivos.
Exemplos das mudanças, sem ao menos comentários no código alterado, para melhor esclarecimento: Antes:
static async listarLivros(req, res) { ... }
Depois:
static listarLivros = async (req, res) => { ... }
Antes:
static async listarLivroPorId(req, res) {
try {
const id = req.params.id
const livroEncontrado = await livro.findById(id)
r...
} catch (err) { ... }
}
Depois: reparem que foi adicionado métodos do mongodb(populate e exec), ambos juntos, sem explicações
static listarLivroPorId = async (req, res) => {
try {
const id = req.params.id;
const livroResultados = await livros.findById(id)
.populate("autor", "nome")
.exec();
...
} catch (erro) { ... }
}
Antes:
static async cadastrarLivro(req, res) {
const novoLivro = req.body
try {
const autorEncontrado = await autor.findById(novoLivro.autor)
const livroCompleto = {...novoLivro, autor: {...autorEncontrado._doc}}
const livroCriado = await livro.create(livroCompleto)
...
} catch (err) { ... }
}
Depois: este é uma das funções em que precisava muito de detalhes e informações sobre as mudanças, pois as alterações aqui, foram bem significativas, pois, não há mais a junção de livro com autor. Existe apenas um método "save()"
static cadastrarLivro = async (req, res) => {
try {
let livro = new livros(req.body);
const livroResultado = await livro.save();
r...
} catch (erro) { ... }
}
Me senti frustrado, esses foram apenas alguns exemplos de mais mudanças que ainda existem, mas seguimos. Por favor, tenham mais atenção com esses detalhes, nas próximas mudanças. Se importem em informar o máximo possível, afinal, somos alunos.