Ou estou viajando? Abraços
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Ou estou viajando? Abraços
Bom dia Henrique!
Então deixa eu ver se eu entendi, no código:
class Heroine{
String nome;
int pontosVida;
int pontosMagia;
double velocidade;
double danoAtaque;
bool? isViva;
Heroine({required this.nome, required this.pontosVida, required this.pontosMagia, required this.danoAtaque, required this.velocidade, this.isViva});
void atacar(){...}
void andar(){...}
void usarMagia(){...}
}Você queria saber se o isViva precisaria de um required no construtor, correto?
Então a resposta é: Não obrigatóriamente
Note que colocamos um ? no parâmetro bool? isViva isso significa pelo Null Safety que o parâmetro pode ser nulo. Ou seja não precisamos necessariamente dar um valor inicial a ele.
Mas qual a vantagem de usar o Null Safety nesse caso Kako?
Bom nesse caso, a Heroina tem seus pontos de vida, portanto está viva. Caso seus pontos de vida cheguem em 0 ela estará morta, correto? Podemos com essa lógica criar um método que nos diz se a Heroina ta viva ou morta, baseando-se no HP dela. Assim, não precisamos receber essa informação (isViva) obrigatoriamente.
Espero ter ajudado.
Já fica o desafio ai, consegue fazer esse método que define se ela ta viva ou morta?