Inicios de la programación

Publicado por CPA-BLOG / Category: ,

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.

Introducción del Go To

Publicado por CPA-BLOG / Category:

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.

Programación estructurada

Publicado por CPA-BLOG / Category:

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.

¿Qué es programación orientada a objeto?

Publicado por CPA-BLOG / Category: ,

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: ,

1. 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.

2. Las estructuras de selección: Se basan en una declaración condicional. Si es verdadera, ciertas líneas de código son ejecutadas. Si tal declaración es falsa, esas líneas no serán ejecutadas. Las dos estructuras de selección más comunes son: Si-Entonces (If-Then) y Si-Entonces-de lo contrario (If-Then-Else).
3. Las estructuras de repetición (o de ciclos): Su construcción también hace uso de declaraciones condicionales. Si la condición evaluada es verdadera, un bloque de una o más instrucciones se repetirá, hasta que la condición sea falsa. La computadora prueba la condición una primera vez, si es verdadera, ejecuta el bloque de comandos. Entonces, finalizada la primera repetición, comprueba de nuevo la condición y si es verdadera se repite el bloque nuevamente, y así sucesivamente hasta que la condición sea falsa. Ya que este funcionamiento es cíclico, cada una de estas repeticiones es llamada también ciclo. Tres estructuras de este tipo son: Repita para (For-Next), Repita Mientras (While) y Repita Hasta (Do-While).


Características de la programación orientada a objetos

Publicado por CPA-BLOG / Category: ,

Objetos: En general cuando se observa o se piensa sobre un objeto, por ejemplo un carro, siempre se le percibe como un todo. No es común enfocarse en sus componentes de acero, vidrio o plástico, sino más bien, la mente lo percibe como unidad completa, como un objeto, como un todo. Si se desea describir el carro, se puede pensar en su color, tamaño y forma. Como todos los objetos, el carro posee atributos que permiten describirle. Se puede pensar además en las cosas que el carro puede hacer, como acelerar, retroceder, girar a derecha o izquierda.

El carro tiene un conjunto de funciones que puede realizar. Además, es fácil notar que el carro contiene elementos que le constituyen: Los cauchos, el chasis, el sistema de tracción, y otros. Pero esos elementos a su vez están formados por otros elementos. Como es el caso del motor y de las partes que le forman. De manera muy similar, en la POO se emplean módulos llamados objetos, que poseen atributos y funciones. Los objetos encapsulan o contienen otros objetos, que a su vez pueden ser también contenedores de objetos.


Clases y herencia de clases: Cuando se mira alrededor, es posible ubicar los objetos en clases o categorías abstractas de objetos afines. En un proceso similar, en POO por ejemplo, los autos de las diferentes marcas se agruparían en una clase llamada carros. Una clase consiste en atributos y funciones que son compartidas por más de un objeto. En el caso de los carros, todos cuentan con un volante y cuatro ruedas y pueden ir hacia delante, en reversa, detenerse o acelerar. Los atributos de clase se denominan miembros de datos y las funciones de la clase, se conocen como funciones de miembro o métodos. Las clases pueden ser divididas en subclases. Las subclases normalmente poseen todos los atributos de la clase predecesoras, a lo que se llama herencia de clase.


En POO crear un objeto se denomina instanciación. Al instanciar un objeto, éste adquiere de manera automática los atributos y métodos asociados a la clase a la cual pertenece. Normalmente no se espera que los carros operen por sí solos. Para que el carro vaya hacia delante se envía una señal, presionando el acelerador. En POO se utilizan los mensajes para indicar a los objetos que realicen una determinada función.

Procedimientos y Funciones

Publicado por CPA-BLOG / Category: ,

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.