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

Uso de retorno no construtor

Entendo que a intenção de usar

new Bind()

durante a aula seja uma maneira de apresentar uma funcionalidade do JS. Mas no caso de dar significado ao código, não seria melhor utilizar uma função estática para fazer o data binding? Algo do tipo:

Bind.bindView(model, view, props)

Acredito que seria mais fácil que lembrar que o construtor de Bind retorna um proxy.

3 respostas
solução!

Boa tarde, Kaê! Como vai?

Se vc parar pra observar, ao fazer Bind.bindView() na realidade o programador estaria sendo repetitivo. Afinal de contas, se estamos usando a classe Bind e sabemos que o data bind é feito entre um modelo e a view, logo o nome do método estático se configura um pleonasmo (repetição desnecessária). Vejo a utilização do construtor não só como algo mais semântico mas tbm como um código mais enxuto! Além do mais, nesse caso, no final das contas, nem é tão relevante se o que é retornado é uma proxy ou um bind uma vez que tudo que desejamos fazer é criar o vínculo entre modelo e view e basta sabermos que o retorno do construtor da classe Bind é algo compatível com o nosso modelo.

Pegou a ideia? Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Tudo certo! Entendo. Obrigado, Gabriel. Mas acho que ainda optaria pelo método estático com um nome diferente talvez hahaha de repente um "Bind.modelToView()", acredito que não teria nenhum prejuízo no final das contas, certo? E ainda não precisaria de um retorno que não é utilizado.

Opa, Kaê! Boa tarde!

O retorno do construtor é utilizado sim ( nos métodos adiciona() e apaga() da classe NegociacaoController ) e, consequentemente, tbm seria utilizado no seu caso! Contudo, como falei em minha resposta, bastaria ao programador conhecer a documentação da classe Bind para saber que o retorno do construtor de tal classe devolve um objeto que representa o nosso modelo.

Sobre a questão que vc levantou em relação a ter um problema ou não fazer da forma como vc sugeriu, problema não haveria! Contudo o ideal é que nos adaptemos às convenções de código existentes na comunidade JavaScript e tbm às convenções utilizadas dentro da equipe que estamos inseridos.

Qualquer coisa é só falar, meu aluno!

Grande abraço e bons estudos!