Dart - En lo posible utilice la asignación tardía
Dart v2.9 añadió el modificador late en las variables.
Cuando Null Safety está activado, en algunas ocasiones es necesario indicar explícitamente que inicializaremos una variable no nula posteriormente. Dart no siempre puede asumir que una variable será inicializada más adelante, como en el caso de las variables de alto nivel. El siguiente ejemplo arrojaría un error en Dart.
Esto puede ser usado en los siguientes dos casos.
Late assign: promesa de asignación más tarde
Late lazy: Inicializando una variable será más adelante
Late assign
Promesa de asignación tardía para en la migración de su proyecto a Null Safey (seguridad de nulos)
Algunas ocasiones es necesario indicar explícitamente que inicializaremos una variable no nula posteriormente. Dart no siempre puede asumir que una variable será inicializada más adelante, como en el caso de las variables de alto nivel.
El siguiente ejemplo, Si la variable no es inicializada antes de utilizarla arrojaría un error en el proyecto con Null Safey en Dart:
class Team {
String name;
}
void main(List<String> args) {
Team team: Team();
team.name: 'Flutter';
print(team.name);
}
Uncaught Error: LateInitializationError: Field 'name' has not been initialized.
En este caso, estamos seguros de que inicializaremos la variable, por lo cual podemos indicárselo a Dart con la palabra reserva late.
Continúe este artículo en mi blog personal aquí.