Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Utilização do método closeConnection da classe ConnectionFactory (visto na aula 2 do curso)

Olá pessoal!

Em uma das tarefas/tópicos aula 2 foi criado o método closeConnection, para substituir o close() original de uma conexão/connection.

Utilizamos window.indexedDB.open para abertura de conexão, mas o método closeConnection nunca foi utilizado.

Em aplicações em produção, quando o método (ou equivalente) closeConnection é utilizado (quando um conexão previamente aberta é fechada) ? Ou não é utilizado?

Atenciosamente.

Obs: aguardei até o final do curso para este tópico, porque aconteceram vários casos em que uma dúvida foi atendida na próxima tarefa / aula.

4 respostas

Opa Elías, tudo bem? O fechamento da conexão é um caso interessante. Varia bastante... Devo fechar? Não devo? Por que algumas pessoas não fecham?

No geral, a recomendação básica é: sempre feche logo após a sua operação ter sido feita :)

Porém, algumas implementações de conectores fecham a conexão automaticamente pra você dependendo de um critério. E por isso, pode ser que algumas pessoas confiem nesse critério e não fechem a conexão. Isso é ruim? Não necessariamente.

Olá Wanderson,

Obrigado pelo retorno.

Se eu entendi corretamente, no caso deste curso (Ecmascript 2015) quando a conexão é aberta, esta conexão (que é única / sempre a mesma) fica aberta enquanto a aplicação também estiver.

Dúvida: como funciona neste caso em que a conexão não é fechada, ela será fechada automaticamente? Quando ?

Atenciosamente.

solução!

Oi Elías, então... Como o openConnection cria uma nova promisse sempre que chamada, a ideia é que uma nova conexão é aberta sempre que se faz isso.

Pelo que andei lendo na documentação, um dos momentos onde a conexão é fechada é ao fechar o navegador. Outro é quando há mudança na versão do banco e talvez também quando ocorre algum evento de reload da página.

Link: https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API/Using_IndexedDB

Olá Wanderson,

Isso, o window.indexedDB.open cria uma nova conexão cada vez que é chamado, mas no caso deste curso foi incluído um teste para sempre considerar a mesma conexão.

Ah, bem show a documentação que você encontrou, obrigado!

Atenciosamente.