2
respostas

Wrapper (createDBConnection)

Queria entender melhor como funciona o wrapper (como no caso do createDBConnection). Quando uma função X chama a função Y, a Y não seria executada igual a como se fosse chamada diretamente? O que muda?

2 respostas

Oi Mark, tudo bom?

Sim, é executado normalmente. A diferença é que agora isolamos esse código:

function createDBConnection(){
    return mysql.createConnection({
                host:'localhost',
                user:'root',
                password:'',
                database:'casadocodigo_nodejs'
          });

}

Agora quando quisermos uma conexão, basta usarmos:

createDBConnection()

Assim a gente evita muita repetição de código!

E mais, no dia que sua conexão mudar nós precisamos mexer apenas em um lugar =)

A funcionalidade é a mesma. Mas a forma com que é feito e a manutenção no futuro se tornou completamente diferente!

Espero ter ajudado, qualquer problema compartilha com a gente.

Abraço e bons estudos =)

Olá, Mark na verdade oque é passado agora é o endereço da função e a mesma não é executada, observe que no código do professor ele retorna createDBConnection e não createDBConnection(), um é a função o outro é a execução da mesma, ha diferenças, não sei se fui claro mas qualquer coisa posta ai que a gete tenta ajudar de outra forma.