Bueno, retornamos luego de un fin de semana salvaje (?) que incluyó cosas como el primer día del niño de mi hija y fiebre.
Retornando al viejo curso para principiantes, vimos algo en el curso de QBasic que no vimos en forma teórica en este tutorial. Las subrutinas.
Muchas veces un código se va a repetir muchísimas veces en un programa, y no como en el caso de los loops, donde ponemos dentro de el este código a repetir, sino algo que se va a ejecutar en por ejemplo, varias pantallas. Vamos a ver esto con un ejemplo:
Supongamos que tenemos cinco pantallas a las que accedemos mediante el ingreso de un número (del 1 al 5). En cada pantalla al inciarse, debemos mostrar los datos de la empresa.
Un código posible para esto sería:
Imprimir "1-Pantalla de ventas"
Imprimir "2-Panatalla de compras"
Imprimir "3-Administración"
Imprimir "4-Clientes"
Imprimir "5-Proveedores"
Ingresar "Seleccione pantalla",pantalla
Seleccionar caso pantalla:
pantalla=1:
Imprimir "Empresa ficticia S.A."
Imprimir "9 de Julio 3333 5*A"
Imprimir "Teléfono: 5555-5555"
[El resto de la programación de la pantalla de ventas]
pantalla=2:
Imprimir "Empresa ficticia S.A."
Imprimir "9 de Julio 3333 5*A"
Imprimir "Teléfono: 5555-5555"
[El resto de la programación de la pantalla de compras]
pantalla=3:
Imprimir "Empresa ficticia S.A."
Imprimir "9 de Julio 3333 5*A"
Imprimir "Teléfono: 5555-5555"
[El resto de la programación de la pantalla de administración]
pantalla=4:
Imprimir "Empresa ficticia S.A."
Imprimir "9 de Julio 3333 5*A"
Imprimir "Teléfono: 5555-5555"
[El resto de la programación de la pantalla de clientes]
pantalla=5:
Imprimir "Empresa ficticia S.A."
Imprimir "9 de Julio 3333 5*A"
Imprimir "Teléfono: 5555-5555"
[El resto de la programación de la pantalla de clientes]
Fin Seleccionar Caso*Nota, entre corchetes imaginen que va todo el resto del código de esa pantalla
Todos esos datos que voy a repetir en esas pantallas, no tiene sentido hacerlo, les presento las subrutinas. Comencemos por lo más sencillo, la de este ejemplo, que no tiene ningún parámetro, y en el próximo capítulo les muestro algunas con parámetros:
Imprimir "1-Pantalla de ventas"
Imprimir "2-Panatalla de compras"
Imprimir "3-Administración"
Imprimir "4-Clientes"
Imprimir "5-Proveedores"
Ingresar "Seleccione pantalla",pantalla
Seleccionar caso pantalla:
pantalla=1:
datos()
[El resto de la programación de la pantalla de ventas]
pantalla=2:
datos()
[El resto de la programación de la pantalla de compras]
pantalla=3:
datos()
[El resto de la programación de la pantalla de administración]
pantalla=4:
datos()
[El resto de la programación de la pantalla de clientes]
pantalla=5:
datos()
[El resto de la programación de la pantalla de clientes]
Fin Seleccionar Caso
Sub datos()
Imprimir "Empresa ficticia S.A."
Imprimir "9 de Julio 3333 5*A"
Imprimir "Teléfono: 5555-5555"
Fin SubVen que ahora queda más prolijo. Cree una subrutina que se va a llamar datos (estos paréntesis van siempre, en el próximo artículo les explico el por que, aunque si vieron el último capítulo del tutorial de QBasic van a entender) y simplemente cada vez que necesito acceder a esos datos llamo a la subrutina.
Esto me trae muchos beneficios, entre los que encontramos:
- Menos repetición de código.
- Más prolijidad.
- Si tengo que cambiar algo de ese código lo voy a hacer en un solo lugar.
Espero que hayan entendido la importancia de esto, en el próximo capítulo vamos a hacerlo algo más difícil!