Programacion estructurada

Solo disponible en BuenasTareas
  • Páginas : 28 (6879 palabras )
  • Descarga(s) : 0
  • Publicado : 26 de febrero de 2011
Leer documento completo
Vista previa del texto
Programación estructurada

05

En esta unidad aprenderás a: Comprender la justificación de la programación estructurada Conocer en qué consiste la programación estructurada Utilizar la la programación estructurada en el diseño de aplicaciones Mantener mejor las aplicaciones

5. Programación estructurada
5.1 La visión clásica de la programación estructurada…

5.1 La visión clásica de laprogramación estructurada: la programación sin goto
La visión clásica de la programación estructurada se refiere al control de ejecución. El control de su ejecución es una de las cuestiones más importantes que hay que tener en cuenta al construir un programa en un lenguaje de alto nivel. La regla general es que las instrucciones se ejecuten sucesivamente una tras otra, pero diversas partes delprograma se ejecutan o no dependiendo de que se cumpla alguna condición. Además, hay instrucciones (los bucles) que deben ejecutarse varias veces, ya sea en número fijo o hasta que se cumpla una condición determinada. Sin embargo, algunos lenguajes de programación más antiguos (como Fortran) se apoyaban en una sola instrucción para modificar la secuencia de ejecución de las instrucciones medianteuna transferencia incondicional de su control (con la instrucción goto, del inglés "go to", que significa "ir a"). Pero estas transferencias arbitrarias del control de ejecución hacen los programas muy poco legibles y difíciles de comprender. A finales de los años sesenta, surgió una nueva forma de programar que reduce a la mínima expresión el uso de la instrucción goto y la sustituye por otras máscomprensibles. Esta forma de programar se basa en un famoso teorema, desarrollado por Edsger Dijkstra, que demuestra que todo programa puede escribirse utilizando únicamente las tres estructuras básicas de control siguientes: • Secuencia: el bloque secuencial de instrucciones, instrucciones ejecutadas sucesivamente, una detrás de otra. • Selección: la instrucción condicional con doble alternativa,de la forma "if condición then instrucción-1 else instrucción-2". • Iteración: el bucle condicional "while condición do instrucción", que ejecuta la instrucción repetidamente mientras la condición se cumpla. Los programas que utilizan sólo estas tres instrucciones de control básicas o sus variantes (como los bucles for, repeat o la instrucción condicional switch-case), pero no la instruccióngoto, se llaman estructurados. Ésta es la noción clásica de lo que se entiende por programación estructurada (llamada también programación sin goto) que hasta la aparición de la programación orientada a objetos se convirtió en la forma de programar más extendida. Esta última se enfoca hacia la reducción de la cantidad de estructuras de control para reemplazarlas por otros elementos que hacen uso delconcepto de polimorfismo. Aun así los programadores todavía utilizan las estructuras de control (if, while, for, etc.) para implementar sus algoritmos porque en muchos casos es la forma más natural de hacerlo. Una característica importante en un programa estructurado es que puede ser leído en secuencia, desde el comienzo hasta el final sin perder la continuidad de la tarea que

119

5.Programación estructurada
5.2 La visión moderna de la programación estructurada…

cumple el programa, lo contrario de lo que ocurre con otros estilos de programación. Este hecho es importante debido a que es mucho más fácil comprender completamente el trabajo que realiza una función determinada si todas las instrucciones que influyen en su acción están físicamente contiguas y encerradas por un bloque.La facilidad de lectura, de comienzo a fin, es una consecuencia de utilizar solamente tres estructuras de control, y de eliminar la instrucción de transferencia de control goto.

5.2 La visión moderna de la programación estructurada: la segmentación
La realización de un programa sin seguir una técnica de programación produce frecuentemente un conjunto enorme de sentencias cuya ejecución es...
tracking img