Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

O backend do curso AngularJs fez uso de schemas?

Quando fiz o curso AngularJs achei interessante, pois consegui gravar uma foto com uma estrutura diferente da estrutura dos documento (foto) na cocollection (Fotos), apenas alterando a aplicação Angular. Inclusive postei uma dúvida no fórum do exercício do curso sobre isso.

Aqui no curso MEAN Stack isso (alterar minha aplicação Angular para gravar um documento com uma estrutura diferente) não será possível, pois em nosso backend estamos criando um esquema que impedirá que a aplicação Angular realize inclusão de uma foto com uma "propriedade" que não esteja definida no esquema/modelo.

Perguntas:

  1. No backend do curso AngularJs, foi utilizado esquemas?

  2. Existe alguma vantagem em não definir esquemas e deixar o programador do frontend "controlar" o que será gravado no banco?
1 resposta
solução!

Fala ai Joaquim, tudo bem? Vamos lá:

No backend do curso AngularJs, foi utilizado esquemas?

Não, nesse back-end não foi utilizado nenhum schema ou validação do que estava sendo inserido.

Existe alguma vantagem em não definir esquemas e deixar o programador do frontend "controlar" o que será gravado no banco?

Quando trabalhos com banco de dados e back-end devemos tomar todo cuidado possível para que as coisas funcionem ou não tenhamos problemas.

Em aplicações onde o banco de dados usado e relacional a validação da estrutura fica por conta do próprio banco, por exemplo o MySQL, nele é possível criar nossas tabelas e definir as colunas que irão ter, os tipos dos dados, etc...

Porém, em aplicações onde usamos um banco não relacional, geralmente a validação fica por conta do back-end através de schema's. A gente define qual será a tabela (coleção) e seus campos e tipos,

Deixa uma validação dessa apenas no front-end pode ser facilmente burlada, quebrando totalmente a consistência e segurança dos dados da nossa aplicação.

Espero ter ajudado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software