Es un paradigma de programación orientado a mejorar
la claridad, calidad y tiempo de desarrollo de un
programa de computadora, utilizando únicamente
subrutinas y tres estructuras: secuencia, selección (if y
switch) e iteración (bucles for y while), considerando
innecesario y contraproducente el uso de la instrucción
de transferencia incondicional (GOTO), que podría
conducir a "código espagueti", que es mucho más difícil
de seguir y de mantener, y era la causa de muchos
errores de programación.
Surgió en la década de 1960, particularmente del
trabajo Böhm y Jacopini,[1] y una famosa carta, la
sentencia goto considerada perjudicial, de Edsger
Dijkstra en 1968[] — y fue reforzado teóricamente por
el teorema del programa estructurado, y prácticamente
por la aparición de lenguajes como ALGOL con
adecuadas y ricas estructuras de control.
Los programas que utilizan sólo estas tres
instrucciones de control básicas o sus variantes (como
los bucles bm,bmcondicional CASE), pero no la
instrucción GOTO, se llaman estructurados
La programación estructurada (llamada también
"programación sin GOTO") se convirtió durante los años
setenta en la forma de programar más extendida. A pesar de
ello, la mayoría de los lenguajes conservan la instrucción
GOTO y las etiquetas de las instrucciones, para utilizarla en
casos muy especiales, aunque normalmente se desaconseja
su uso.
Entre los lenguajes de alto nivel, Pascal, C y Ada pueden
considerarse especializados en programación estructurada,
y aunque todos ellos permiten utilizar la instrucción GOTO,
se desaconseja su uso (aunque en C es una práctica común
utilizarlo para manejo de errores).
Diferente que la programación estructurada la programación
orientada a objetos se enfoca en reducir la cantidad de
estructuras de control y reemplazarlo con el concepto de
polimorfismo. Aún 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.
Control de la ejecución y GOTO
Una de las cuestiones más importantes que hay que tener en
cuenta al construir un programa en un lenguaje de alto nivel, es
el control de su ejecución.
Son raros los programas que constan de un conjunto de
instrucciones que se ejecutan sucesivamente una tras otra.
En la mayor parte de los casos, diversas partes del programa se
ejecutan o no, dependiendo de que se cumpla alguna condición.
Además, hay instrucciones (los bucles) que deben
efectuarse varias veces, ya sea en número fijo o hasta
que se cumpla una condición determinada.
Los lenguajes más antiguos (como Fortran) se
apoyaban en una sola instrucción para definir el control
de los programas: la instrucción GOTO (del inglés go
to, que significa ir a), que corresponde a la
transferencia incondicional de los lenguajes simbólicos,
a la que se añade alguna forma condicional, combinada
con ella, que permite bifurcar el orden de ejecución de
las instrucciones.
Tanto en Fortran como en Basic, la
instrucción GOTO y sus variantes van acompañadas de
una o más etiquetas, que indican el número de la
instrucción a la que debe dirigirse la transferencia de
control.
Pero las etiquetas numéricas y las transferencias
arbitrarias hacen los programas muy poco legibles y
difíciles de comprender.
Como primer intento de resolver el problema, en
lenguajes más modernos se recurrió a utilizar etiquetas
no numéricas, igual que se hace en los lenguajes
simbólicos de segunda generación
1.- Los programas son más fáciles de entender.
Un programa estructurado puede ser leído en secuencia, de arriba
hacia abajo, sin necesidad de estar saltando de un sitio a otro en la
lógica, lo cual es típico de otros estilos de programación. La
estructura del programa es mas clara puesto que las instrucciones
están mas ligadas o relacionadas entre sí, por lo que es más fácil
comprender lo que hace cada función.
2.Reducción del esfuerzo en las pruebas. El programa se puede
tener listo para producción normal en un tiempo menor del
tradicional; por otro lado, el seguimiento de las fallas("debugging")
se facilita debido a la lógica más visible, de tal forma que los
errores se pueden detectar y corregir mas fácilmente.
3.Reducción de los costos de mantenimiento.
4.Programas más sencillos y más rápidos.
5.Aumento de la productividad del programador.
6.Se facilita la utilización de las otras técnicas para el
mejoramiento de la productividad en programación.
7.Los programas quedan mejor documentados
internamente.
- Se obtiene un único bloque del programa que cuando
se hace demasiado grande puede ser problemático para
el manejo del código fuente
Una de las características del lenguaje de programación en
C, es que es un lenguaje estructurado, lo que permite
generar código claro y sencillo, ya que esta basado en la
El lenguaje de programación en C, esta estructurado en
tres
partes:
- Librerías estándar
- Programa compilador
-Preprocesador (INCLUDE – DEFINE

Programación estructurada

  • 1.
    Es un paradigmade programación orientado a mejorar la claridad, calidad y tiempo de desarrollo de un programa de computadora, utilizando únicamente subrutinas y tres estructuras: secuencia, selección (if y switch) e iteración (bucles for y while), considerando innecesario y contraproducente el uso de la instrucción de transferencia incondicional (GOTO), que podría conducir a "código espagueti", que es mucho más difícil de seguir y de mantener, y era la causa de muchos errores de programación.
  • 2.
    Surgió en ladécada de 1960, particularmente del trabajo Böhm y Jacopini,[1] y una famosa carta, la sentencia goto considerada perjudicial, de Edsger Dijkstra en 1968[] — y fue reforzado teóricamente por el teorema del programa estructurado, y prácticamente por la aparición de lenguajes como ALGOL con adecuadas y ricas estructuras de control. Los programas que utilizan sólo estas tres instrucciones de control básicas o sus variantes (como los bucles bm,bmcondicional CASE), pero no la instrucción GOTO, se llaman estructurados
  • 3.
    La programación estructurada(llamada también "programación sin GOTO") se convirtió durante los años setenta en la forma de programar más extendida. A pesar de ello, la mayoría de los lenguajes conservan la instrucción GOTO y las etiquetas de las instrucciones, para utilizarla en casos muy especiales, aunque normalmente se desaconseja su uso. Entre los lenguajes de alto nivel, Pascal, C y Ada pueden considerarse especializados en programación estructurada, y aunque todos ellos permiten utilizar la instrucción GOTO, se desaconseja su uso (aunque en C es una práctica común utilizarlo para manejo de errores).
  • 4.
    Diferente que laprogramación estructurada la programación orientada a objetos se enfoca en reducir la cantidad de estructuras de control y reemplazarlo con el concepto de polimorfismo. Aún 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. Control de la ejecución y GOTO Una de las cuestiones más importantes que hay que tener en cuenta al construir un programa en un lenguaje de alto nivel, es el control de su ejecución. Son raros los programas que constan de un conjunto de instrucciones que se ejecutan sucesivamente una tras otra. En la mayor parte de los casos, diversas partes del programa se ejecutan o no, dependiendo de que se cumpla alguna condición.
  • 5.
    Además, hay instrucciones(los bucles) que deben efectuarse varias veces, ya sea en número fijo o hasta que se cumpla una condición determinada. Los lenguajes más antiguos (como Fortran) se apoyaban en una sola instrucción para definir el control de los programas: la instrucción GOTO (del inglés go to, que significa ir a), que corresponde a la transferencia incondicional de los lenguajes simbólicos, a la que se añade alguna forma condicional, combinada con ella, que permite bifurcar el orden de ejecución de las instrucciones.
  • 6.
    Tanto en Fortrancomo en Basic, la instrucción GOTO y sus variantes van acompañadas de una o más etiquetas, que indican el número de la instrucción a la que debe dirigirse la transferencia de control. Pero las etiquetas numéricas y las transferencias arbitrarias hacen los programas muy poco legibles y difíciles de comprender. Como primer intento de resolver el problema, en lenguajes más modernos se recurrió a utilizar etiquetas no numéricas, igual que se hace en los lenguajes simbólicos de segunda generación
  • 7.
    1.- Los programasson más fáciles de entender. Un programa estructurado puede ser leído en secuencia, de arriba hacia abajo, sin necesidad de estar saltando de un sitio a otro en la lógica, lo cual es típico de otros estilos de programación. La estructura del programa es mas clara puesto que las instrucciones están mas ligadas o relacionadas entre sí, por lo que es más fácil comprender lo que hace cada función. 2.Reducción del esfuerzo en las pruebas. El programa se puede tener listo para producción normal en un tiempo menor del tradicional; por otro lado, el seguimiento de las fallas("debugging") se facilita debido a la lógica más visible, de tal forma que los errores se pueden detectar y corregir mas fácilmente.
  • 8.
    3.Reducción de loscostos de mantenimiento. 4.Programas más sencillos y más rápidos. 5.Aumento de la productividad del programador. 6.Se facilita la utilización de las otras técnicas para el mejoramiento de la productividad en programación. 7.Los programas quedan mejor documentados internamente. - Se obtiene un único bloque del programa que cuando se hace demasiado grande puede ser problemático para el manejo del código fuente
  • 9.
    Una de lascaracterísticas del lenguaje de programación en C, es que es un lenguaje estructurado, lo que permite generar código claro y sencillo, ya que esta basado en la El lenguaje de programación en C, esta estructurado en tres partes: - Librerías estándar - Programa compilador -Preprocesador (INCLUDE – DEFINE