Dart introdujo Null Safety para ayudar a los desarrolladores a prevenir errores comunes relacionados con valores nulos. Null Safety garantiza que las variables no pueden contener null a menos que se especifique explícitamente, reduciendo así los errores en tiempo de ejecución. Con esta funcionalidad, Dart permite un desarrollo más seguro y predecible.
La Null Safety en Dart se refiere a la capacidad del lenguaje para prevenir errores provocados por valores null. Esta característica permite que una variable sea no nula por defecto. Para permitir que una variable tenga un valor nulo, debes usar el modificador ?. De esta forma, el compilador de Dart te obliga a gestionar los valores nulos de forma explícita, reduciendo así la probabilidad de errores.
null a una variable sin el operador ?, el compilador marcará un error.
int edad = 25; // Correcto
int edadNula; // Error: necesita asignación o ser nula.
? junto al tipo de la variable.
int? edad; // Permite asignar null
1. Operador de acceso condicional (?.): Permite acceder a propiedades y métodos solo si el valor no es null.
String? nombre;
print(nombre?.length); // No arroja error si nombre es null.
2. Operador de coalescencia nula (??): Permite definir un valor predeterminado si el valor es null.
String? saludo;
print(saludo ?? "Hola, mundo!"); // Si saludo es null, imprime el mensaje.
3. Operador de asignación si es nulo (??=): Asigna un valor a la variable solo si es null.
int? numero;
numero ??= 10; // Asigna 10 si numero es null.
String nombre = "Juan";
String? apellido;
??:
String? mensaje;
print(mensaje ?? "Sin mensaje");
!. para forzar valor no nulo:
String? nombre;
print(nombre!.length); // Arrojará error si nombre es null.
Para más información sobre Null Safety en Dart, visita la documentación oficial de Dart.
Jorge García
Fullstack developer