Oi Bruno, tudo bem?
Quando o instrutor André criou o construtor na classe Import
, ele fez isso para inicializar a variável client
da classe. Essa variável é do tipo HttpClient
e é usada para fazer a comunicação com a API. A variável client
é inicializada no construtor com a chamada ao método ConfiguraHttpClient("http://localhost:5057")
, que configura o HttpClient
para se comunicar com a API.
A razão pela qual o código não funcionou sem o construtor é que a variável client
estava sendo usada sem ser inicializada. Quando o código tentou usar a variável client
, ela era null
, o que causou um erro.
Após a criação do construtor, a variável client
foi devidamente inicializada antes de ser usada, e por isso o código funcionou.
Quanto a quando usar essa "técnica" novamente, sempre que você tiver uma variável em sua classe que precisa ser inicializada antes de ser usada, é uma boa prática fazer essa inicialização no construtor da classe. Isso garante que a variável sempre será inicializada antes de ser usada, evitando erros.
Um exemplo: se você tiver uma classe DatabaseConnection
que tem uma variável connectionString
, você pode inicializar essa variável no construtor da classe DatabaseConnection
para garantir que ela sempre tenha um valor antes de ser usada.
Espero ter ajudado.
Um abraço e bons estudos.