CONCEPTOS GENERALES:
¿Qué es Programación Orientada a Objetos (P.O.O.) y qué
ventajas tiene?
Es un paradigma de programación que usa objetos y sus interacciones, para
diseñar aplicaciones y programas de ordenador. Está basado en varias técnicas,
incluyendo herencia, modularidad, polimorfismo y encapsulamiento.
La POO 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
sólo 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.
¿Qué es un Objeto en Programación?
Un objeto es en realidad un conjunto de métodos (funciones y
procedimientos), todos ellos relacionados con un determinado concepto del mundo
real. Los objetos son entidades que combinan estado (atributo), comportamiento
(método) e identidad: El estado está compuesto de datos, será uno o varios
atributos a los que se habrán asignado unos valores concretos (datos).
El comportamiento está definido por los procedimientos o métodos con que
puede operar dicho objeto, es decir, qué operaciones se pueden realizar con él 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. Los objetos disponen de mecanismos de interacción
llamados métodos, que favorecen la comunicación entre ellos. Esta comunicación
favorece 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 el estado de un objeto es como describir todos los detalles de cierto objeto en un instante determinado así que cada vez que los atributos cambian, se puede decir que el objeto cambia de estado.
¿Qué son los Métodos y los Atributos?
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, ya que al hacerlo podría producir un 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
programación orientado a objetos.