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

Programando de forma defensiva

Flávio tenho uma dúvida em relação a programação defensiva, eu entendi o motivo pelo qual ela é necessária, proteger as variáveis para que seu valor não seja alterado de forma não prevista porém a solução implica em criarmos sempre um novo objeto. Isso não faz com que a memória fique cheia de objetos? Obrigado.

4 respostas

Olá Jorge, cara na minha opinião não. Se você notar o único objeto que você sempre abre uma nova instância é a data.

Olá Alan temos também a programação defensiva com outro atributo que é a lista de negociações, se esta lista conter muitos objetos não ficará custoso sempre criar uma uma nova instancia para passar como retorno?

Boa noite Jorge,

Quando se trata de objetos e arrays você está passando a referência desses objetos, como está passando um novo, o antigo que era referenciado é limpo da memória, isso se chama Garbage Collection.

Para saber um pouco mais sobre isso dentro do JS, segue o link.

https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Memory_Management

solução!

Oi Jorge!

Você esta correto em se preocupar com o uso de memória, no entanto JavaScript tem garbage collector que não vai deixar sua heap explodir.

Linguagens como Java que trabalham com referência lançam mão da mesma estratégia.

Pode ficar tranquilo nesse sentido.