el término de Programación Orientada a Objetos indica más
una forma de diseño y una metodología de desarrollo de software que un lenguaje
de programación, ya que en realidad se puede aplicar el Diseño Orientado a
Objetos (En inglés abreviado OOD, Object Oriented Design), a cualquier tipo de
lenguaje de programación.
El desarrollo de la OOP empieza a destacar durante la década
de los 80 tomando en cuenta la programación estructurada, a la que engloba y
dotando al programador de nuevos elementos para el análisis y desarrollo de
software
Los objetos son entidades que tienen un determinado
"estado", "comportamiento (método)" e
"identidad":
La identidad es una propiedad de un objeto que lo diferencia
del resto; dicho con otras palabras, es su identificador (concepto análogo al
de identificador de una variable o una constante).
Un objeto contiene toda la información que permite definirlo
e identificarlo frente a otros objetos pertenecientes a otras clases e incluso
frente a objetos de una misma clase, al poder tener valores bien diferenciados
en sus atributos. A su vez, los objetos disponen de mecanismos de interacción
llamados métodos, que favorecen la comunicación entre ellos. Esta comunicación
favorece a su vez el cambio de estado en los propios objetos. Esta característica
lleva a tratarlos como unidades indivisibles, en las que no se separa el estado
y el comportamiento.
Los métodos (comportamiento) y atributos (estado) están
estrechamente relacionados por la propiedad de conjunto. Esta propiedad destaca
que una clase requiere de métodos para poder tratar los atributos con los que
cuenta. El programador debe pensar indistintamente en ambos conceptos, sin
separar ni darle mayor importancia a alguno de ellos. Hacerlo podría producir
el hábito erróneo de crear clases contenedoras de información por un lado y
clases con métodos que manejen a las primeras por el otro. De esta manera se
estaría realizando una "programación estructurada camuflada" en un
lenguaje de POO.
La programación orientada a objetos difiere de la programación
estructurada tradicional, en la que los datos y los procedimientos están
separados y sin relación, ya que lo único que se busca es el procesamiento de
unos datos de entrada para obtener otros de salida. La programación
estructurada anima al programador a pensar sobre todo en términos de
procedimientos o funciones, y en segundo lugar en las estructuras de datos que
esos procedimientos manejan. En la programación estructurada solo se escriben
funciones que procesan datos. Los programadores que emplean POO, en cambio,
primero definen objetos para luego enviarles mensajes solicitándoles que
realicen sus métodos por sí mismos.
No hay comentarios:
Publicar un comentario