Diferença Entre Const e Final no Dart
Um conceito simples e interessante também é a respeito da diferença de uso das variáveis com os tipos const e final. Ambas são usadas para manter as variáveis com determinado tipo constantes, mas elas se comportam de maneira diferente. Há uma grande diferença em fazer:
const int a;
final int a;
No primeiro caso, já vai dar erro, pois a variável a não teve nenhuma atribuição. Com isso vemos como o const se comporta, que é atribuir uma variável uma única vez e essa atribuição tem que ser feita logo na definição da variável const.
final int a;
a = 3;
a = 5; (Erro nessa linha)
No segundo caso não vai dar erro, mas uma vez atribuído um valor para a ele vai se manter constante e não pode ser alterado, que é o comportamento do final.
Expliquei a diferença entre const e final baseado na postagem: Difference between Const and Final in Dart. Nela ele explica bem mais detalhado sobre o const e o final.
Se tiverem alguma dúvida, podem me mandar uma mensagem ou deixar comentado no chat abaixo.