Ruta de aprendizaje para crear aplicaciones móviles con Flutter - Parte 7:

Ruta de aprendizaje para crear aplicaciones móviles con Flutter - Parte 7:

Aprende lo básico de Dart - Flujos de control

Los flujos de control en Dart son utilizados para controlar el flujo de ejecución de un programa, lo que significa que determinan el orden en el que se ejecutan las instrucciones o bloques de código. Estas estructuras de control permiten tomar decisiones condicionales y repetir ciertas acciones, lo que es fundamental para crear programas más complejos y lógicos.

Veremos los principales en Dart:

Estructuras de decisión (condicionales):

if:

Permite ejecutar un bloque de código si una condición es verdadera.

else:

Se combina con "if" para ejecutar un bloque de código alternativo si la condición es falsa.

void main() {
  int edad = 29;

  if (edad >= 18) {
    print('Eres mayor de edad');
  } else {
    print('Eres menor de edad');
  }
}

En este ejemplo podemos ver que están las condicionales de: Si edad es mayor o igual a 18, imprimimos el mensaje "Eres mayor de edad", en caso contrario imprimimos que "Eres menor de edad", aquí hacemos uso de "if" y de "else", estos van juntos para tomar la decisión con base en la condición.

else if:

Se utiliza para agregar más condiciones a evaluar antes de llegar al "else".

void main() {
  int calificacion = 85;

  if (calificacion >= 90) {
    print('Tienes una A');
  } else if (calificacion >= 80) {
    print('Tienes una B');
  } else if (calificacion >= 70) {
    print('Tienes una C');
  } else {
    print('Tienes una F');
  }
}

En este otro ejemplo, como podemos ver de igual forma, utilizamos lo que es "if", "else", pero agregamos algunas condiciones más antes de llegar al "else", podemos ver que nuestra calificación es de 85 y nuestra primera condicional dice:

Si la variable "calificacion" es mayor o igual a 90, imprimimos "Tienes una A" y los otros casos de B y C son prácticamente lo mismo, pero poniendo otra condición, en este caso es el cambio de calificación e imprimirá conforme al contenido de la variable "calificacion" y como última condición entra al "else" que es una vez que paso por todas las demás condiciones y ahí termina el flujo.

Bucle for:

El bucle "for" se utiliza para repetir un bloque de código un número específico de veces. Por ejemplo, para imprimir los números del 1 al 5:

void main() {
  for (int i = 1; i <= 5; i++) {
    print(i);
  }
}

Como podemos ver en este bucle "for", primero inicializamos la variable tipo entero en 1, seguido de esto viene la condición que en este caso le decimos que mientras sea menor o igual a 5 y después aumentamos en 1 la variable para que vaya aumentando el ciclo, por último dentro del for imprimimos la misma variable, hasta que llegue a 5.

Bucle while:

El bucle while se utiliza para repetir un bloque de código mientras una condición dada sea verdadera. Por ejemplo, para imprimir los números del 1 al 5:

void main() {
  int i = 1;
  while (i <= 5) {
    print(i);
    i++;
  }
}

Este tipo de bucle es muy similar al "for", mientras la condición sea verdadera ejecutara el código dentro del bucle, como vemos de igual forma va aumentando la variable hasta llegar a 5.

Bucle do-while:

El bucle do-while es similar al bucle while, pero el bloque de código se ejecuta al menos una vez antes de que se evalúe la condición. Por ejemplo, para pedir al usuario que ingrese un número mayor que 5:

void main() {
  int contador = 1;

  do {
    print('Contador: $contador');
    contador++;
  } while (contador <= 5);
}

En este ejemplo, el bucle do-while imprimirá el valor de "contador" desde 1 hasta 5. La condición se evalúa después de la ejecución del código dentro del bucle. Por lo tanto, el bloque de código se ejecutará al menos una vez, imprimiendo "Contador: 1" incluso si la condición ya no se cumpliera después de la primera iteración. Luego, el contador se incrementa en 1 en cada iteración hasta que "contador" llegue a 5 y se cumpla la condición "contador <= 5".

Para que lo vean de una mejor forma, cambien la condición: "contador <= 5 por 0" y verán como hace una primera iteración y después se detiene porque se encuentra con que no cumple con la condición.

switch:

Permite seleccionar entre varias opciones de código basadas en el valor de una expresión.

void main() {
  String diaDeLaSemana = 'lunes';

  switch (diaDeLaSemana) {
    case 'lunes':
      print('Hoy es lunes');
      break;
    case 'martes':
      print('Hoy es martes');
      break;
    case 'miércoles':
      print('Hoy es miércoles');
      break;
    case 'jueves':
      print('Hoy es jueves');
      break;
    case 'viernes':
      print('Hoy es viernes');
      break;
    case 'sábado':
    case 'domingo':
      print('Es fin de semana');
      break;
    default:
      print('Día no válido');
  }
}

En este tipo de condicional podemos seleccionar por casos un fragmento de código que queramos ejecutar dependiendo al contenido de una variable: En este ejemplo vemos que nuestra variable "diaDeLaSemana" tiene como valor asignado "lunes", en este caso solo imprimirá "Hoy es lunes", pero si el valor de la variable cambiara a "domingo", nuestro código que se ejecutaría sería: "Es fin de semana", por último tenemos un "break", con esto le decimos al "switch" que ahí termina las posibles opciones y hasta al final ponemos un "default", esto nos ayuda en caso de que nuestra variable contenga un valor que no hemos tomado en cuenta en nuestros casos por ejemplo:

Que nuestra variable contenga como valor "Hola", como dentro de nuestro "switch" no tomamos en cuenta ese case, el "switch" imprimirá por default "Día no válido".

Te dejo acá los links donde puedes encontrar más información acerca de los flujos de control:

https://dart.dev/language/branches

Con esto podemos dar por finalizada la primera parte de la serie donde vimos lo básico de Dart, para poder entrar a aprender Flutter, espero que te haya sido de utilidad y espera los siguientes posts, donde ya estaremos adentrándonos en aprender Flutter.

Por último: estoy intentando llegar a los 1000 suscriptores en Facebook y estoy en proceso de crear comunidad, te agradecería que me siguieras en mis redes sociales y te unieras a mi servidor de Discord donde estaré publicando, cada que suba contenido nuevo, al igual podrías suscribirte a mi newsletter, te dejo mis links aquí abajo:

Discord: discord.gg/PVSayFhn

YouTube: youtube.com/@code-crushers

Facebook: facebook.com/isai.x.x

Did you find this article valuable?

Support Isaí Arellano by becoming a sponsor. Any amount is appreciated!