Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida na Aula 5 Video 3

Tenho uma duvida referente a Aula 5 Video 3, quando criamos uma Array de Itens na classe Meal é criado uma array de itens vazia. ` var item = Array<Item>() Não seria uma boa pratica passar esse objeto pelo construtor ao em vez de instanciar um objeto vazio?

Tentei fazer mas não consegui imaginei que o código ficaria meio estranho dessa forma, por essa questão que não foi passado pelo construtor?

3 respostas
solução!

Oi André,

Se você quisesse passar este array pelo construtor, você teria que fazer assim:

class Meal {
    let name: String?
    let happiness: Int?
    let items: Array<Item>

    init(name: String, happiness: Int, items: Array<Item>){
        self.name = name
        self.happiness = happiness
        self.items = items
    }
}

Abraço!

entendi, obrigado pela ajuda. Mais fazer dessa forma é uma boa pratica?

Sim, para este caso poderíamos ter recebido o Array de itens diretamente no construtor já que a classe Meal depende dos itens.