4.1. Funciones

La programación estructurada se basa en la creación de algoritmos fáciles de leer de principio a fin, sin saltos ni derivaciones en el flujo del programa. El uso de las tres estructuras básicas de control puede hacer que el código de los programas estructurados sea extenso, lo cual, puede dificultar su lectura y seguimiento.
 
 
Para evitarlo se recurre a la segmentación, es decir, a la división del programa en bloques de código. De esta forma, los programas se dividen en procedimientos que son "llamados" desde el código del programa.
Esta forma de programar se considera una mejora de la programación estructurada. Se denomina programación modular, programación por procedimientos o programación funcional y se basa en los módulos o subprogramas denominados procedimientos o funciones.
top-down

Importante

Una función o un procedimiento es un conjunto de instrucciones que realiza una o varias tareas específicas. Sus componentes son:

  • una entrada o entradas determinadas.
  • un dato de salida.
  • un nombre único e identificable en el algoritmo del programa principal.

El trabajo con funcion es útil en estos casos:

  • cuando una tarea debe ejecutarse varias veces en un programa.
  • cuando la resolución de un problema requiere un código extenso y de lectura complicada.

Sin embargo, no todos los lenguajes de programación admiten el uso de funciones.

Reflexiona

Un ejemplo típico de programa modular es el utilizado en la gestión de una cuenta bancaria. Las operaciones que se pueden realizar están claras y bien definidas (imposición, retiro, transferencia, estado de la cuenta), por tanto se puede diseñar un procedimiento para cada proceso.
¿Eres capaz de proponer otros ejemplos?
ventajas

Las ventajas del uso de esta "modularidad" en la programación son:

  • simplificación del código.
  • rapidez en el desarrollo y en la detección de errores.
  • facilidad en el mantenimiento y la modificación del código.

 

Estas ventajas adquieren su máxima importancia cuando los procedimientos para realizar tareas típicas que se repiten en todos los programas ya están implementados y simplemente se nombran en el programa. Estos procedimientos se almacenan en una bibliotecas denominadas librerías.

Cualquier lenguaje de programación incorpora sus propias funciones predefinidas, o funciones internas, listas para ser usadas por el programador. Así, tenemos librerías para cálculos estadísticos, para el tratamiento de cadenas de caracteres, etc.