typestar

Fundamentos del lenguaje

27 pasos en 9 series de Dart.

Dart es el lenguaje de Flutter, y por lo tanto de una porción enorme de las apps multiplataforma que se publican hoy: un lenguaje construido por Google que compila a ARM y x64 nativos, a JavaScript y a WebAssembly, con un hot reload que hace que el ciclo de editar y correr se sienta de scripting. Nació en 2011 como aspirante a reemplazo de JavaScript, encontró su vocación cuando llegó Flutter, y creció hasta ser un lenguaje del todo moderno: seguridad ante null sólida desde 2021, y records, patrones y clases selladas desde Dart 3.

Este tour teclea el núcleo: var, final y const, interpolación de strings, expresiones switch con patrones relacionales, parámetros con nombre con required y valores por defecto, clausuras, métodos de extensión, los tres literales de colección con spread y collection-if, cadenas de iterables, clases con constructores con nombre, mixins, enums mejorados, el kit de seguridad ante null, records y desestructuración, jerarquías selladas, y async desde Futures hasta Streams y generadores sync*. El Bis es el trío de scripts de siempre — frecuencia de palabras, boletín de calificaciones y estadísticas de temperatura — en Dart 3 idiomático.

Empieza este tour

Valores

Control de flujo

  • if, else y el ternarioLas sentencias ramifican con if; el ternario elige un valor en línea.
  • Expresiones switchEl switch de Dart 3 produce un valor, con patrones relacionales y _.
  • Buclesfor-in para colecciones, el for clásico para contar, while de guarda.

Funciones

Colecciones

Clases

  • Clases y constructoresEl azúcar this. asigna campos; los constructores con nombre abren puertas.
  • MixinsComportamiento engrapado con with, sin reclamar superclase.
  • Enums mejoradosLos enums de Dart son clases: campos, constructores, miembros.

Seguridad ante null

Records y patrones

  • RecordsAgrupa valores sin una clase; la forma es el tipo.
  • PatronesDesestructura y prueba en un solo movimiento, con guardas.
  • Clases selladasUna jerarquía cerrada que el compilador revisa por exhaustividad.

Async

Bis

  • word_freq.dartUna tabla de frecuencias con split, map.update y orden de dos claves.
  • grade_report.dartBoletines desde un roster const, una expresión switch y relleno.
  • temp_stats.dartUna semana de temperaturas: extremos, media, barras y saltos.

Los otros tours de Dart