class Empregado
def emails
@emails ||= []
end
end
ou
class Empregado
def initialize
@emails = []
end
end
A motivação para passar a iniciar cedo atributos (ser trabalhador) é a da legibilidade do código. A mudança de valor de atributos inicados tardiamente, à lá Calvin (ver imagem não é a que queria mas não tenho scanner para a que quero e não estou para ir procurar), ocorre no seu acesso. Os atributos iniciados tardiamente podem ser problemáticos para depurar porque o seu valor muda quando se lhes acede. Os atributos iniciados cedo iniciam os seus atributos no construtor da classe.
Sem comentários:
Enviar um comentário