Programación y desarrollo de software

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. Basadas en el teorema del programa estructurado propuesto por Bohm y Jacopini, ha permitido desarrollar software de fácil comprensión. Vamos a contarte de forma sencilla y rápida todo lo que debes saber sobre la programación estructurada.  

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. 

Para comprenderlo mejor, vamos a hacer un pequeño viaje en el tiempo. Nos vamos al año 1966, cuando Bohm 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, la implicación de la construcción de programas más sencillos más rápidos, en los que disminuía la complejidad de las pruebas y el testing para ponerlos es funcionamiento. 

Avanzamos dos años más en el tiempo. En 1968 Edsger Dijkstra publicó un celebre artículo que impacto en la computación moderna. Pues porque este científico holandés promovió activamente el uso de la eliminación de la sentencia. De hecho, Dijkstra participó en el comité de diseño 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 ellos Java,C,Python y C++. 

LAS 3 ESTRUCTURAS BASICAS  

Ya nos quedado cloro 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? 

  1. Secuencia La estructura
    • secuencial es la que se da forma natural en el lenguaje, porque las sentencias se ejecutan en el orden en el que aparecen en el programa, es decir, una detrás de la otra  
  1. Selección o condicional
    • . La estructura condicional se basa en una sentencia se ejecuta según el valor que se le atribuye a una variable booleana. Una variable booleana es aquella que tiene dos posibles. Por tanto, esta estructura se puede ejecutar de formas distintas, dependiendo del valor posible. Por tanto, esta estructura se puede como apunte para los verdaderos amantes de la programación: para las estructuras condicionales o de selección, Python dispone de la sentencia if, que puede combinarse con elif y/o else 
  1. Iteración
    • (ciclo o bucle). La estructura repetición ejecuta una o un conjunto de sentencias siempre que una variable booleana sea verdadera. Para los bucles o itinerarios, los lenguajes de programación usan las estructuras while y for  

¿QUE ES EL GOTO? 

EL “GOTO” que viene de las palabras “go to” (ir a) permitía mencionar una línea de código a la que el flujo de ejecución debía saltar. Gracias a esta instrucción era posible volver a ejecutar un pedazo de código, saltarse unas cuentas líneas de código y cosas así. Durante mucho tiempo se había programado con esa costumbre, pero daba como resultado programas difíciles de entender, ya que no existía una clara distribución de las responsabilidades y tampoco facilitaba la organización del código. 

TIPOS DE FUNCIONES  

A las subrutinas, el concepto que hoy conocemos por simplemente como “funciones”, algunos leguajes de programación lo dividieron en dos tipos de estructuras: 

1.Las funciones tenían la particularidad de devolver valores  

2.Los procedimientos realizaban procesos, pero no devolvían ningún valor  

3.Los lenguajes de programación que usan comúnmente en la actitud no difieren entre funciones y procedimientos, los tratan de la misma manera, con la misma estructura. 

CARACTERÍSTICAS DE LA PROGRAMACION ESTRUCTURADA  

La programación estructurada por el uso de estructuras de control (condicionales y ciclos). Otras características de la programación estructurada (y de los lenguajes imperativos en general) son:  

1.Uso de entradas/salidas (input y output, o 1/0) 

2.Manejo de errores y excepciones 

3.Abstracción de procedimientos  

4.Expresiones y asignación  

5.Soporte para estructuras de datos  

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 compatible. Parece sencillo, en realidad lo es, precisamente por eso es, se abre inmediatamente el debate entre los programadores que querían continuar con el sistema anterior y los abrazaban estas nuevas estructuras de control con los ojos cerrados. 

Nadie fue declarado vencedor inmediatamente, pero sí que es cierto que, los Digital Workers de los 70, empezaban a ver poco a poco las grandes ventajas que ofrecía la programación estructurada sobre el código espagueti (los programadores de computación antiguos que tenían una estructura de control de flujo compleja e incomprensible) ¿y qué ventajas eran? 

Los programas desarrollados con la programación estructurada son más sencillos de entender, ya que tienen una estructura secuencial y desaparece la necesidad de rastrear los complejos saltos de líneas, dentro de los bloques de código para intentar comprender la lógica interna. 

Como consecuencia inmediatamente de lo anterior, otra ventaja es que los programas resultantes tendrán una estructura clara, gracias a que los sentencias están ligadas y relacionadas entre sí. 

La fase prueba y depuracion de los programadores se optimiza, ya que es mucho más sencillo hacer el seguimiento de los fallos y errores y, por tanto, detectarlos corregirlos. 

El coste del mantenimiento de los programas que usan la programación estructurada es más reducido. Pues por modificar o extender los programas más fáciles 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. 

QUE HABÍA ANTES DE LA PROGRAMACIÓN ESTRUCTURADA  

Antes de aparecer la programación estructurada existía estilo de programación imperativo, en el que se definan paso por paso las acciones para resolver un problema, el algoritmo, con las estructuras de control mencionadas anteriormente, como bucles o condicionales. Es estilo imperativo ha perdurado hasta hoy y sigue siendo usando en la mayoría de los casos, sin embargo, para controlar el flujo de ejecución de las sentencias, antes de la programación estructurada se usaba una instrucción denomina “GOTO” 

QUÉ APORTÓ LA PROGRAMACIÓN ESTRUCTURADA  

En lugar del “GOTO” la programación estructurada propone una pieza nueva que no existía anteriores paradigmas de la programación, que es la subrutina, y la función. 

Gracias a las funciones era posible organizar el código de una manera de más clara. Creando pequeñas piezas de código y que conseguían definir una estructura jerárquica, 

Con las funciones se pudo comenzar a separar las partes del código en pequeñas piezas fácilmente comprensibles y mantenibles, a delegar la responsabilidad en rutinas que eran capaces de resolver un problema y sobre las cuales el programador podía despreocuparse de su funcionamiento interno, porque sabía que ellas serían capaces de resolver sus problemas.

Autor : Edward Nicolás Ruiz Marroquín

Editor :

código : UCPA-1

universidad : universidad Central

Fuentes :

(14/06/2021). programación estructurada - . edix trabajo visual. https://www.edix.com/es/instituto/programacion-estructurada/ 
(19/01/2023). programación estructurada - . el tio tech trabajo visual.https://tiotech.net/excel/programacion-estructurada/  
(14/06/2021). programación estructurada - . edix Imagen. https://www.edix.com/es/instituto/programacion-estructurada/ 
(Feb/ 19/2017). programación estructurada - . Medium Imagen. https://medium.com/laboratoria-how-to/programación-e 
(19/01/2023). programación estructurada - . el tio tech Imagen.https://tiotech.net/excel/programacion-estructurada/ 
 (15/08/2020). programación estructurada - . Como te explico? Imagen.https://youtu.be/5kdSvZzU-Ec?feature=shared 
(15/08/2020). programación estructurada - . Como te explico? Video.https://youtu.be/5kdSvZzU-Ec?feature=shared