Las declaraciones if-else son un elemento básico de la programación, aprendemos a usarlas desde que comenzamos a programar. Si bien son una gran herramienta, no siempre son la mejor opción. Por ejemplo, revisemos este ejemplo de Python:

character = input('Ingrese el nombre del personaje: ').strip()

if character == 'Mago':
  hacer_magia()
elif character == 'Gladiador':
  pelear()
elif character == 'Doctor':
  curar()
elif character == 'Caballo':
  correr()
elif character == 'Jinete':
  montar_caballo()
elif character == 'Dragon':
  lanzar_fuego()
else:
  print('No existe el personaje')

Esta secuencia if-else no solo es innecesaria, sino también bastante ineficiente. Además, si tuviera que realizar más operaciones además de llamar a una función, este código se volvería muy complicado.

En cuanto a la velocidad de ejecución, comprobar todas las condiciones de las sentencias if en serie significaría que, por ejemplo, si el personaje elegido es el último (el Dragón), el programa pasaría por todos los casos antes de encontrar el correcto. Esto significa que el tiempo que lleva ejecutar ese código crece linealmente a medida que aumenta el número de casos a verificar. Entonces, imagina tener muchos más personajes para elegir. ¿Cuánto tiempo se necesitaría para revisar todos esos casos? Innecesariamente largo.

Volver arriba