En la clase anterior, explicamos cómo crear el primer ejemplo de Dart. A continuación, vamos a aprender a crear nuestro propio ejemplo de Hello World.
1 Hello World
- Cada programa Dart debe tener una función
main()de nivel superior, desde aquí comienza la ejecución del programa. - Las funciones sin valor de retorno se definen con la palabra reservada
void print()se usa para imprimir texto en la consola
// Punto de entrada del programa
void main() {
print('Hello, World!');
}
Lenguaje del código: Dart (dart)
Seguimos usando el proyecto creado en la clase anterior como ejemplo. Abre el archivo firstdart.dart ubicado en C:\dartdemo\firstdart\bin
Reemplaza todo el contenido del archivo con el código anterior

Luego abre el símbolo del sistema cmd, navega hasta el directorio C:\dartdemo\firstdart y ejecuta el comando dart run
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
Hello, World!Lenguaje del código: CSS (css)
2 Variables (var: inferencia automática de tipos)
- Al declarar variables con
var, Dart reconoce el tipo automáticamente según el valor asignado, no hace falta escribir el tipo manualmente - Es compatible con cadenas de texto, números enteros, números decimales, listas y mapas (objetos)
Ejemplo
// Punto de entrada del programa
void main() {
var name = 'Voyager 1'; // Cadena String
var year = 1977; // Entero int
var width = 3.7; // Decimal double
var planets = ['Júpiter','Saturno']; // Lista List
var info = {
'tag': ['Saturno'],
'url': 'Dirección de imagen'
}; // Mapa Map
}
Lenguaje del código: Dart (dart)
Arriba definimos varias variables. Una variable es un pequeño espacio de memoria destinado a almacenar datos, al cual le asignamos un nombre. Gracias a ese nombre podemos manipular fácilmente ese fragmento de memoria.
Teóricamente este espacio de memoria puede guardar cualquier secuencia de ceros y unos, ya que toda la información informática está formada por 0 y 1. Los tipos como cadena o entero existen para simplificar la interpretación de los datos: si el compilador detecta un tipo int, leerá la información como un número entero.
Si quieres manipular las variables definidas anteriormente
// Punto de entrada del programa
void main() {
var name = 'Voyager 1'; // Cadena String
var year = 1977; // Entero int
var width = 3.7; // Decimal double
var planets = ['Júpiter', 'Saturno']; // Lista List
var info = {
'tag': ['Saturno'],
'url': 'Dirección de imagen'
}; // Mapa Map
// Ejemplo de uso de cadenas
print('Nombre de la sonda:$name');
print('Longitud del nombre:${name.length}');
print('¿Contiene el número "1"?:${name.contains('1')}');
// Ejemplo de uso de enteros
print('Año de lanzamiento:$year');
print('Años transcurridos:${DateTime.now().year - year} años');
// Ejemplo de uso de decimales
print('Anchura de la sonda:$width metros');
print('Cuadrado de la anchura:${width * width}');
// Ejemplo de uso de listas
print('Lista de planetas objetivo:$planets');
planets.add('Urano'); // Agregar elemento
print('Lista de planetas actualizada:$planets');
print('Primer planeta objetivo:${planets[0]}');
// Ejemplo de uso de mapas
print('Etiquetas de información:${info['tag']}');
print('Enlace de imagen:${info['url']}');
info['status'] = 'En operación'; // Agregar nuevo par clave-valor
print('Información completa:$info');
}
Lenguaje del código: PHP (php)
Aquí usamos impresión formateada, un contenido que aún no hemos estudiado. Por ahora solo entiende el concepto, lo veremos en detalle más adelante.
3 Sentencias de control de flujo (condicionales / bucles)
Condicional if else
Se ejecutan bloques de código distintos según la condición dentro de los paréntesis de if. Si la condición es true (verdadera), se ejecuta el código entre llaves después de if; si es false (falsa), se ejecuta el código del bloque else.

if (condición) {
// Se ejecuta cuando la condición es true
} else {
// Se ejecuta cuando la condición es false
}Lenguaje del código: JavaScript (javascript)
Ejemplo: comprobar si se supera la velocidad permitida
var speed = 25;
if (speed > 60) {
print('¡Exceso de velocidad!');
} else {
print('Velocidad adecuada.');
}Lenguaje del código: PHP (php)
También podemos encadenar varias comprobaciones
if (speed > 100) {
print('¡Velocidad peligrosa!');
} else if (speed > 60) {
print('Vas un poco rápido.');
} else {
print('Conducción segura.');
}Lenguaje del código: PHP (php)
void main() {
var year = 1977;
if (year >= 2001) {
print('Siglo XXI');
} else if (year >= 1901) {
print('Siglo XX');
}
}
Lenguaje del código: Dart (dart)
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
Siglo XXLenguaje del código: CSS (css)
Recorrer listas con for-in
En Dart, el bucle for‑in es una sintaxis compacta para iterar objetos iterables como List y Set.
Comprueba si la lista tiene un elemento siguiente: si lo hay, ejecuta el código entre llaves; si no, finaliza el bucle y continúa con el resto del programa.
Sintaxis:
for (var item in collection) {
// Usar la variable item
}Lenguaje del código: JavaScript (javascript)

Ejemplo
void main() {
var planets = ['Júpiter','Saturno'];
for (final item in planets) {
print(item);
}
}
Lenguaje del código: Dart (dart)
Resultado de ejecución
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
Júpiter
SaturnoLenguaje del código: CSS (css)
Bucle numérico for tradicional
Comienza en i=1 y llega hasta 12 inclusive gracias al operador <=. Después de cada print se ejecuta i++.
void main() {
for (int i = 1; i <= 12; i++) {
print(i);
}
}Lenguaje del código: JavaScript (javascript)

Resultado de ejecución
C:\dartdemo\firstdart>dart run
Building package executable...
Built firstdart:firstdart.
1
2
3
4
5
6
7
8
9
10
11
12Lenguaje del código: CSS (css)
- Primero se ejecuta una única vez int i = 1
- Luego se verifica si se cumple la condición i <=12
- Si se cumple, se ejecuta print(i) y muestra el valor 1
- Después se hace i++, i pasa a valer 2
- Vuelve a comprobar i<=12: como 2<=12 es true, se imprime el valor 2
- Se repite i++ y la comprobación sucesivamente
- …..
- Cuando i valga 13, la condición i<=12 es falsa, se sale del bucle for y continúa el código siguiente
La sentencia int i=1; solo se ejecuta al principio, nunca más. Su función es inicializar i, así que también se puede escribir así:
void main() {
int i = 1;
for (; i <= 12; i++) {
print(i);
}
}
Lenguaje del código: Dart (dart)
4. Bucle while
El bucle while es similar al for. En Dart, el bucle while repite un bloque de código mientras la condición sea verdadera. Su sintaxis es muy sencilla:
while (condición) {
// Cuerpo del bucle
}Lenguaje del código: JavaScript (javascript)
Lógica de ejecución:
- Primero comprobar si la condición es
true. - Si es verdadera, ejecutar el cuerpo del bucle.
- Al terminar el cuerpo, volver a comprobar la condición.
- Cuando la condición sea
false, finalizar el bucle.
Para que la condición deje de cumplirse, debes modificar alguna variable dentro del cuerpo del bucle. Si no la modificas, se genera un bucle infinito que nunca se detiene.
var year = 2010;
while(year < 2016){
year += 1;
}
Lenguaje del código: JavaScript (javascript)
Desglose de los pasos de ejecución 👇
Fase de inicialización
- Definir la variable
yearcon valor inicial2010.
Fase de comprobación de condición
- Comprobar si se cumple
year < 2016. - Si es verdadera, entrar al cuerpo del bucle; si es falsa, salir del bucle.
Fase de ejecución del cuerpo
- Ejecutar
year += 1, equivalente ayear = year + 1. - Cada iteración incrementa
yearen una unidad.
Fase de comprobación repetida
- Vuelve a comprobar la condición
year < 2016. - Mientras
yearesté entre 2010 y 2015, la condición es verdadera. - Cuando
yearllegue a 2016, la condición es falsa y el bucle finaliza.
Fase final
- Al terminar el bucle, el valor final de
yeares 2016.
Este bucle se ejecuta un total de 6 veces (desde 2010 hasta 2015), incrementando year en uno cada vez hasta que la condición no se cumpla. Ten cuidado: si no modificas year dentro del bucle, se generará un bucle infinito.