1
resposta

Duvida nesse construtor que usou no I18NLoadingContainer

O professor usou um construtor mais verboso que seria:

I18NLoadingContainer({required viewKey, required creator}){ this.viewKey = viewKey; this.creator = creator; };

Isso não é a mesma coisa que o construtor que estamos acostumados ao longo do curso ?

Que no caso ficaria I18NLoadingContainer({required this.viewKey, required this.creator}).

Na minha cabeça são a mesma coisa, procede ?

1 resposta

Oi Willian, tudo bem?

Desculpe a demora em retornar.

Ótima pergunta! Na verdade, os dois construtores são semelhantes, mas há uma diferença sutil entre eles.

No primeiro construtor que você mencionou, o professor optou por usar uma abordagem mais verbosa, atribuindo os valores dos parâmetros aos atributos da classe explicitamente dentro do corpo do construtor. Isso pode ser útil quando você precisa realizar algum processamento adicional antes de atribuir os valores aos atributos.

Já no segundo construtor, que você está acostumado a ver ao longo do curso, a atribuição é feita diretamente nos parâmetros do construtor usando a sintaxe "this". Essa abordagem é mais concisa e geralmente é utilizada quando não há necessidade de realizar nenhum processamento adicional.

Ambas as formas são válidas e funcionam corretamente. A escolha entre elas depende do contexto e da preferência do desenvolvedor.

Espero ter esclarecido sua dúvida.

Um abraço e bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software