Algoritmica y Programacion 2
Algoritmica y Programacion 2
PROGRAMACIÓN ESTRUCTURADA
Para comprenderlo mejor, vamos a hacer un pequeño viaje en el tiempo. Nos vamos al año
1966, cuando Böhm y Jacopini proponen el teorema del programa estructurado, con el que
demuestran que cualquier programa puede ser escrito utilizando solo tres instrucciones de
control. Imagínate, ¡esto fue toda una revolución! Implicaba la construcción de programas
más sencillos y más rápidos, en los que disminuía la complejidad de las pruebas y el testing
para ponerlos en funcionamiento.
Características y ventajas
El teorema del programa estructurado es la base teórica sobre la que se construyó esta
nueva forma de programar, ya que nos da la característica fundamental de la programación
estructurada. Postula que, simplemente con la combinación de tres estructuras básicas, es
suficiente para expresar cualquier función computable. Parece sencillo, ¿verdad? En
realidad, lo es y, precisamente por eso, se abre inmediatamente el debate entre los
programadores que querían continuar con el sistema anterior y los que abrazaban estas
nuevas estructuras de control con los ojos cerrados. ¿Quién crees que ganó?
Vale, nadie fue declarado vencedor inmediatamente, pero sí que es cierto que ‘los Digital
Workers de los años 70’ empezaban a ver poco a poco las grandes ventajas que ofrecía la
programación estructurada sobre el código espagueti (los programas de computación
antiguos que tenían una estructura de control de flujo compleja e incomprensible). Y, ¿qué
ventajas eran esas?
La fase de prueba y depuración de los programas se optimiza, ya que es mucho más sencillo
hacer el seguimiento de los fallos y errores y, por tanto, detectarlos y corregirlos.
El coste del mantenimiento de los programas que usan la programación estructurada es más
reducido. ¿Por qué? Pues porque modificar o extender los programas es más fácil al estar
formados por una estructura secuencial.
Al ser más sencillos los programas, son más rápidos de crear y los programadores aumentan
su rendimiento.
Ya nos ha quedado claro que la programación estructurada es una forma de programar más
sencilla que se basa únicamente en la combinación de tres órdenes. Pero, ¿cuáles son esos
tipos de estructuras de control que son capaces de expresarlo todo?
Y solamente con estas tres estructuras de control, ¡se pueden escribir todos los programas y
aplicaciones posibles! ¡Todos! Si estás pensando que los lenguajes de programación tienen
más estructuras, sí, es cierto, pero cualquiera de ellas puede ser construida gracias a estas
tres básicas que hemos citado. ¿Comprendes ahora todo el revuelo que se formó con el
teorema de la programación estructurada?