DartPad: Experimentación inmediata sin configuración local

DartPad es un entorno de ejecución en la web diseñado para probar código Dart de forma instantánea. A diferencia de la instalación completa del SDK en tu máquina, que utiliza la Dart VM para ejecutar código de forma nativa, DartPad funciona mediante una capa de traducción que permite que el código corra dentro de tu navegador.

Esto lo hace extremadamente útil para aprender la sintaxis básica, probar un algoritmo rápido o para compartir un pequeño fragmento de código con un colega para demostrar un punto mediante una URL. Sin embargo, esta comodidad tiene una limitación fundamental: al ejecutarse en un entorno controlado por el navegador (un sandbox), no tienes acceso a recursos del sistema operativo. No puedes leer archivos de tu disco duro, ni abrir sockets de red, ni crear servidores locales. Además, DartPad solo permite utilizar la librería estándar básica y no permite instalar paquetes externos de pub.dev que no estén ya pre-configurados en su entorno. Si intentas usar librerías que dependan de funciones del sistema, el código fallará.

void main() {
  // DartPad es ideal para probar lógica pura y sintaxis de forma rápida.
  final listaDeNombres = ['Elena', 'Marcos', 'Sofía', 'Julián'];
  final listaFiltrada = <String>[];

  print('--- Iniciando procesamiento ---');

  for (final nombre in listaDeNombres) {
    // Usamos interpolación de strings para construir mensajes
    if (nombre.length > 4) {
      listaFiltrada.add(nombre);
    }
  }

  for (var nombre in listaFiltrada) {
    print('Nombre validado: $nombre');
  }

  print('Proceso completado con ${listaFiltrada.length} elementos.');
}

En el ejemplo anterior, hemos definido una función main, que es el punto de entrada obligatorio para cualquier programa Dart. Hemos utilizado final para declarar variables que no cambiarán su referencia, una buena práctica para mantener la integridad de los datos. La lógica utiliza un bucle for-in para recorrer la colección listaDeNombres y una instrucción if para evaluar la longitud de cada String. Al usar print(), enviamos la salida directamente a la consola del navegador. Es importante notar que todo lo que ves aquí, desde la interpolación de strings ($nombre) hasta la gestión de listas, es parte de la librería dart:core, que es la base que DartPad siempre tiene disponible.

El error frecuente

Un error muy común cuando estás empezando es intentar usar librerías de sistema operativo que ves en tutoriales de aplicaciones de consola o servidores.

import 'dart:io'; // ❌ Esto causará un error en DartPad

void main() {
  // Intentar acceder al sistema de archivos local
  final archivo = File('datos.txt');
  print(archivo.existsSync()); 
}

El error ocurre porque dart:io requiere acceso real al sistema de archivos del sistema operativo para funcionar. Como DartPad corre dentro de un entorno aislado en el navegador, la clase File no tiene un “disco duro” real al que conectarse, lo que lanzará una excepción de error de ejecución.

8

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio