miércoles, 24 de febrero de 2010

Programación orientada a objetos (POO)

Los entusiastas de la POO aseguran que, a pesar de que sus conceptos básicos puedan parecer un tanto abstractos al principio, este tipo de programación se asemeja más a la manera natural de pensar y concebir el mundo. Por esta razón, el proceso de modelado es más intuitivo, y se hace posible crear y mantener programas de manera más sencilla y rápida.

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 el ejemplo de los carros, estos pueden tener una clase sedan, una clase deportivo y una clase camioneta pick up; todas las clases comparten como atributo un volante y como función acelerar. Además de las características heredadas, las subclases pueden tener características propias. Para las pick up, por ejemplo, cuentan además con dirección en las cuatro ruedas. De este modo todo objeto pertenece a una 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.

No hay comentarios:

Publicar un comentario