La programación estructurada: un cambio hacia la claridad y la eficiencia


¿Qué es la programación estructurada?

La programación estructurada es una teoría orientada a mejorar la claridad, calidad y tiempo de desarrollo utilizando únicamente subrutinas o funciones. Basada en el teorema del programa estructurado propuesto por Böhm y Jacopini, ha permitido desarrollar software de fácil comprensión.

La palabra programación, a veces, asusta. Y si le pones estructurada justo después, más. Pero, en realidad, no es para tanto. Vamos a verlo. La programación estructurada es una corriente que nació con la vocación de facilitar la vida de los programadores, sobre todo cuando estos debían abordar fases de mejora posteriores a la creación del programa, y de ordenar la forma en la que se creaba cualquier tipo de programa. ¿Cualquiera, cualquiera? ¡Sí! 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. Avanzamos dos años más en el tiempo. En 1968, Edsger Dijkstra publicó un célebre artículo que impactó en la computación moderna: Go To Statement Considered Harmful. ¿Por qué es tan importante? Pues porque este científico holandés promovió activamente el uso de lenguajes de programación estructurada, fomentando la verificación formal de programas y la eliminación de la sentencia Goto. De hecho, Dijkstra participó en el comité que diseñó Algol 60, el primer lenguaje de programación estructurado. La programación estructurada se convierte así, junto con la programación orientada a objetos, en uno de los paradigmas de programación más populares que ejecuta los lenguajes más potentes que seguro conoces, incluidos, entre otros, Java, C, Python y C++.

Tipos de estructuras

Secuenciales:
Las instrucciones secuenciales son las más comunes en un programa estructurado. Representan una operación o acción ejecutada dentro del programa.





Condicionales:
La bifurcación o transferencia de control (originada por una instrucción condicional) es la operación por la cual el ordenador selecciona la acción a ejecutar dentro de un conjunto de posibilidades. Esta elección está determinada por el valor que tomen determinadas variables, definidas anteriormente por medio de sentencias lineales. 



Repetitivas:
Por su parte, cuando se repiten varias instrucciones hasta que una variable alcance un determinado valor, se está en presencia de una estructura repetitiva.



Ventajas de la programación estructurada:

  • Los programas son más fáciles de entender, pueden ser leídos de forma secuencial y no hay necesidad de tener que rastrear saltos de líneas (GOTO) dentro de los bloques de código para intentar entender la lógica interna. 
  • La estructura de los programas es clara, puesto que las instrucciones están más ligadas o relacionadas entre sí. Se optimiza el esfuerzo en las fases de pruebas y depuración. 
  • El seguimiento de los fallos o errores del programa (debugging), y con él su detección y corrección, se facilita enormemente. Se reducen los costos de mantenimiento. 
  • Análogamente a la depuración, durante la fase de mantenimiento, modificar o extender los programas resulta más fácil. 
  • Los programas son más sencillos y más rápidos de confeccionar. Se incrementa el rendimiento de los programadores.

No hay comentarios.:

Publicar un comentario