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

Factory

"É por isso que uma classe Factory possui apenas um método, "

No caso eu não posso ter varias métodos em uma unica fábrica?

GeometriaFactory

GeometriaFactory.criaQuadrado(argumentos) GeometriaFactory.criaTriangulo(argumentos)

6 respostas

Oi Alan! Pode sim, você esta corretíssimo!

Mas então porque o DateHelper não poderia ser uma Factorory? .

Essa citação foi feita no video .. "É por isso que uma classe Factory possui apenas um método, "

No meu exemplo acima tenho 2 métodos..

fiquei confuso ;/

solução!

No caso o DateHelper é um converter, tem papel diferente de uma Factory. O mais correto seria eu ter chamado-o de DateConverter para deixar isso bem claro.

Não lembro o contexto no qual eu disse isso no vídeo, mas se for de maneira literal como esta escrito, o correto é dizer que um Factory esconde a complexidade de criação de um ou mais objetos. Beleza meu aluno?

Em suma:

Converter: ajuda na conversão de objetos

Factory: esconde a complexidade de criação de instâncias de objetos.

Outro ponto que não falo no curso, porque ele tem foco muito em orientação a objetos. Não precisamos de classes para criar factories. Podemos ter uma função, uma Factory Function responsável por criar o objeto complexo. Escrevemos menos, pois não precisamos declarar uma classe, por exemplo, com método estático.

Ainda há o terceiro curso pela frente para algumas dessas ideias se consolidarem.

Muito obrigado!

Flavio, parabéns você tem uma ótima didática! Continue evoluindo!

Obrigado Alan! Qualquer dúvida só postar no fórum! Se eu tivesse feito esse curso hoje, eu teria detalhado mais essas partes que você sinalizou. Mas ainda assim, nada que uma resposta no fórum não esclareça.