1
resposta

Solução do Desafio

Será que tem como fazer uma solução do desafio mais simples? o uso do this só me confundiu, não cheguei a entender muito bem as conexões e verificações entre as listas

1 resposta

Olá, Christopher! Tudo joia?

Entendo que o uso do this possa ser um pouco confuso no início, mas vamos tentar simplificar um pouco as coisas.

O this é uma palavra-chave em C# que se refere à instância atual da classe. No contexto do desafio, this é usado para referenciar a instância atual da classe Filme ou Artista em que o código está sendo executado.

Vamos pegar como exemplo a parte do desafio que pede para modificar as classes Artista e Filme para serem consistentes uma com a outra. Isso pode ser feito com o uso do this da seguinte maneira:

public class Filme
{
    public string Titulo { get; set; }
    public List<Artista> Elenco { get; set; }

    public void AdicionarArtista(Artista artista)
    {
        Elenco.Add(artista);
        artista.Filmes.Add(this);
    }
}

public class Artista
{
    public string Nome { get; set; }
    public List<Filme> Filmes { get; set; }

    public void AdicionarFilme(Filme filme)
    {
        Filmes.Add(filme);
        filme.Elenco.Add(this);
    }
}

Nesse exemplo, quando você adiciona um Artista a um Filme usando o método AdicionarArtista, você também está adicionando esse Filme à lista de filmes do Artista. O this nesse contexto se refere à instância atual da classe Filme ou Artista que está sendo manipulada.

Lembre-se, a prática é essencial para o aprendizado, então continue tentando e explorando diferentes abordagens para resolver o desafio.

Espero que essa explicação tenha deixado as coisas um pouco mais claras para você.

Bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.