Vejo que quando uma classe é criada a palavra-chave "final" é utilizada nas suas propriedades, como no exemplo abaixo:
class Contact {
final String name;
final int accountNumber;
Contact(
this.name,
this.accountNumber
);
}
As propriedades "name" e "accountNumber" têm os seus tipos definidos e além disso fazem uso da palavra-chave "final". Para que serve o "final" nessa situação? É obrigatório utilizá-lo? Ou é uma questão de padrão de código ou de boas práticas?