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

Dúvida sobre entendimento

Eu realizei todos os passos mas estou meio confuso em relação à ligação entre CarrinhoCompras e CarrinhoItem, alguém poderia apenas me explicar esse relacionamento ou se houver um fluxograma/diagrama pra eu conseguir visualizar melhor o que estamos construindo, até para melhor aprendizado e entendimento das etapas que estamos concluindo do sistema.

Muito obrigado!

2 respostas

Olá Jhony!

O CarrinhoCompras representa o carrinho ao todo (com todos seus itens).

Já o CarrinhoItem representa somente 1 item do CarrinhoCompras.

Talvez a dúvida seja o por que utilizar um CarrinhoItem e não um Item diretamente, certo?

Acontece que ao utilizar um Item, quando você adicionar 5 livros iguais no carrinho e for remover 1 ele irá remover todos pois ele interpreta o carrinho como um todo e por isso todos os itens que forem iguais seriam removidos.

Já o CarrinhoItem enxerga que os itens são diferentes mesmo que sejam instanciados pela mesma classe, isso acontece pois ele cria um identificador unico para cada item o que faz que resolva o problema citado acima já que ao remover um item ele irá agir como o esperado.

solução!

Caso não tenha ficado muito claro ainda pode me avisar que tento explicar de outra maneira!