Vendo o exercício fiquei com uma dúvida. No mundo real podemos chamar métodos de serviço como gravar no BD ou mesmo enviar SMS dentro de um builder mesmo que usando o pattern Observer? É uma boa idéia?
Vendo o exercício fiquei com uma dúvida. No mundo real podemos chamar métodos de serviço como gravar no BD ou mesmo enviar SMS dentro de um builder mesmo que usando o pattern Observer? É uma boa idéia?
Olá Felipe !
O motivação do padrão Builder é facilitar a construção de objetos mais complexos com uma interface mais intuitiva nas chamadas de cada componente. Isso não quer dizer que não podemos misturar os padrões, inclusive é uma otima pratica você misturar padrões estruturais(referente a construção de objetos) com padrões comportamentais isso é uma ótima ideia.
oi felipe
Pode sim chamar esses métodos, mas repare que no exercício eles só estão sendo chamados quando o build final é invocado, não durante a construcao do objeto em si (as invocacoes da interface fluente).
Mas a maioria das vezes você vai encontrar builders que realmente apenas preparam o objeto, sem essa mistura de dois patterns diferentes.