En los inicios de la programación y hasta principios de los sesenta, no había estructuras bien definidas en la forma en que se escribía el código. Se disponía una línea tras otra de programación construyendo un único e inmenso bloque, que constituiría el programa.
El control del flujo a través de gran cantidad de líneas de instrucciones, resultaba difícil de seguir no sólo por su tamaño, sino porque no siempre es posible programar siguiendo la secuencia de una línea tras otra. Por lo que, luego de los años 60 del siglo XX, se hizo frecuente el uso de la instrucción go to (vaya a) escrito como “goto” en el programa.
Esta instrucción goto, identifica una línea de programa, que puede estar varias líneas más abajo e incluso varias líneas más arriba, a la cual salta para cambiar el control del flujo. Si se piensa en un programa pequeño, tal vez no resulte tan engorroso el seguimiento de estos saltos. La cuestión cambia, si se trata de un programa de miles de líneas donde se generaliza el uso del goto, de modo que el programa va a presentar multitud de saltos. Entonces seguir el flujo del programa realmente se torna muy complicado e incluso imposible, aún para quien lo esté desarrollando.
Surge como la práctica de construir programas usando un conjunto de estructuras bien definidas. Esta programación evoluciona en los años sesenta y entre una de sus metas se encuentra, la eliminación de la instrucción goto dentro del código. Aún cuando la programación estructurada brindó mejoras, atribuyendo claridad y eficiencia en los programas, continuó existiendo la necesidad de hacer programas de manera más rápida y eficiente. Se reconoce en la reutilización del código, como un camino a la solución de acelerar la construcción de los programas. Las subrutinas, bloques constructores en la programación estructurada, son un paso más en la solución de este problema.
En la programación orientada a objetos, los bloques constructores son unos componentes modulares y reusables, denominados objetos. Surge en los ochenta, afirmándose que llegará a ser el enfoque dominante de la programación. Este enfoque enriquece la programación estructurada, más que sustituirla. Los objetos están compuestos en sí mismos, por piezas de programa estructuradas, y la lógica de manipulación de objetos también es estructurada.
Características de la programación estructurada
Publicado por CPA-BLOG / Category: estructuras, programación1. La estructura secuencial: Está definida por el flujo de control automático de un programa. De manera natural, a menos que otra cosa se indique, la computadora ejecuta las líneas de código en el orden en que fueron escritas. El control del programa fluye de la línea anterior a la línea siguiente.
Características de la programación orientada a objetos
Publicado por CPA-BLOG / Category: objeto, programación
Los procedimientos y funciones son bloques de código reusables, que pueden ser invocados en cualquier parte de un programa, mediante expresiones que les representan. Son algoritmos específicos en un lenguaje de programación que resuelven un problema definido. Pueden ser usados cada vez que es requerido, simplemente colocando la expresión que les invoca, sin necesidad de reescribir todas las instrucciones que representan a tal procedimiento o función. Por ejemplo, si se desea la raíz cuadrada de un número, podría usarse la expresión Sqrt(x). La x dentro del paréntesis es llamada argumento, siendo el número del cual se desea la raíz cuadrada. El argumento permite especificar la entrada a la función cuando el programa se está ejecutando. Siendo x la variable que almacena el número 12 para un programa, la función buscará la raíz cuadrada de 12. Cuando la función encuentra la raíz cuadrada, devuelve el valor al programa que la invocó.
A los procedimientos y funciones en conjunto suele denominárseles también rutinas o subrutinas. Dependiendo del lenguaje de programación que se esté utilizando y de acuerdo a cómo éste implemente las rutinas, se pueden imponer algunas diferencias entre las funciones y los procedimientos. Las funciones, en general, son rutinas que devuelven un valor como resultado a partir de uno o más argumentos. Es el caso de las funciones matemáticas, que calculan el logaritmo de un número, su raíz cuadrada,... Los procedimientos por otro lado, son aquellas rutinas que no devuelven un valor, sino que realizan una acción determinada, usando tal vez un grupo de argumentos. Es el caso, por ejemplo, de un procedimiento para presentar por pantalla una circunferencia, en la que tendría que suministrarse simplemente valores como la posición en la pantalla y el radio de la misma.