Menu
CoddyTech

Seguridad Básica ante Null

Parte de la sección Fundamentos del Journey de Dart de Coddy. Lección 14 de 94.

La seguridad frente a valores null ayuda a prevenir cierres inesperados de la aplicación al controlar qué variables pueden estar vacías (null).

De forma predeterminada, las variables deben contener un valor:

void main() {
  String name = 'Dart';
  print(name);  // Salida: Dart
  
  // Esto causaría problemas:
  // name = null;  // No permitido
}

Añade ? después del tipo para permitir valores nulos:

void main() {
  String? name = 'Dart';
  print(name);  // Muestra: Dart
  
  // Ahora podemos asignar null
  name = null;
  print(name);  // Muestra: null
}

Puedes declarar variables anulables de cualquier tipo:

void main() {
  int? age;  // Sin valor inicial, por defecto es null
  double? price = 19.99;
  bool? isAvailable = true;
  
  print(age);         // Imprime: null
  print(price);       // Imprime: 19.99
  print(isAvailable); // Imprime: true
  
  // Podemos cambiar cualquiera de estos valores a null
  price = null;
  isAvailable = null;
}

 

La seguridad frente a valores nulos ayuda a proteger tu aplicación de cierres inesperados que se producen cuando el código intenta usar valores nulos en operaciones.

challenge icon

Desafío

Principiante

Crea un programa en Dart que demuestre la seguridad básica frente a valores nulos usando el operador ?:

  1. Declara una variable String llamada username y asígnale null usando el operador de seguridad frente a valores nulos ? (String?)
  2. Declara una variable int llamada userAge y asígnale null usando el operador de seguridad frente a valores nulos
  3. Imprime ambas variables con etiquetas en el SIGUIENTE formato EXACTO:
Username: null
User age: null

Después:

  1. Asigna el valor "DartLearner" a la variable username
  2. Asigna el valor 25 a la variable userAge
  3. Imprime ambas variables de nuevo con el MISMO formato EXACTO que antes

Tu resultado debe coincidir con el formato exacto mostrado arriba.

Pruébalo tú mismo

void main() {
  // Declara aquí tus variables que pueden ser nulas
  String? username = ?;
  int? userAge = ?;
  
  // Imprime los valores iniciales con etiquetas
  print("Username: " + username.toString());
  print("User age: " + userAge.toString());
  
  // Asigna nuevos valores a las variables
  username = ?;
  userAge = ?;
  
  // Imprime los valores actualizados con las mismas etiquetas
  print("Username: " + username.toString());
  print("User age: " + userAge.toString());
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de Dart online