Identificación de los elementos de la POO
La Programación Orientada a Objetos (POO u OOP)
es un
paradigma de programación que define los programas en
términos de “clases
de objetos”, objetos que son entidades
que combinan estado (propiedades o
datos),
comportamiento (procedimientos o métodos) e identidad
(propiedad del
objeto que lo diferencia del resto). La
programación orientada a objetos
expresa un programa
como un conjunto de estos objetos, que colaboran entre
ellos para realizar tareas. Esto permite hacer los programas
y módulos más
fáciles de escribir, mantener y reutilizar.
Elementos de la POO:
-. Objetos: contienen
toda la información que permite definirlo e identificarlo frente a otros
objetos pertenecientes a otras clases (e incluso entre objetos de una misma
clase, al poder tener valores bien diferenciados en sus atributos).
A su vez, dispone de mecanismos de interacción
(los llamados métodos) que favorecen la comunicación entre objetos (de una
misma clase o de distintas), y en consecuencia, el cambio de estado en los
propios objetos. Esta característica lleva a tratarlos como unidades
indivisibles, en las que no se separan (ni deben separarse) información (datos)
y procesamiento (métodos).
-. Atributos: Los atributos son las características individuales que diferencian un
objeto de otro y determinan su apariencia, estado u otras cualidades. Los
atributos se guardan en variables denominadas de instancia, y cada objeto
particular puede tener valores distintos para estas variables.
Las variables de instancia también denominados miembros dato, son declaradas en la clase pero sus valores son fijados y cambiados en el objeto.
Además de las variables de instancia hay variables de clase, las cuales se aplican a la clase y a todas sus instancias. Por ejemplo, el número de ruedas de un automóvil es el mismo cuatro, para todos los automóviles.
-.Mensajes: Corresponde a la forma que tienen los objetos para comunicarse entre sí, de esta forma, el objeto que activa el mensaje se llama objeto emisor y el que lo recibe objeto receptor. Cabe señalar que un mensaje debe ser activado o generado desde un método hacia un objeto. En términos generales equivale a la llamada a un procedimiento o función.
Forma general de un mensaje:
receptor_mensaje.selector_mensaje [(parámetros)]
p/e ventana_editor.maximizar; documento1.imprimir(2);
-. Clases: son declaraciones o abstracciones de objetos, lo que significa, que una clase es la definición de un objeto. Cuando se programa un objeto y se definen sus características y funcionalidades, realmente se programa una clase.
Las variables de instancia también denominados miembros dato, son declaradas en la clase pero sus valores son fijados y cambiados en el objeto.
Además de las variables de instancia hay variables de clase, las cuales se aplican a la clase y a todas sus instancias. Por ejemplo, el número de ruedas de un automóvil es el mismo cuatro, para todos los automóviles.
-.Mensajes: Corresponde a la forma que tienen los objetos para comunicarse entre sí, de esta forma, el objeto que activa el mensaje se llama objeto emisor y el que lo recibe objeto receptor. Cabe señalar que un mensaje debe ser activado o generado desde un método hacia un objeto. En términos generales equivale a la llamada a un procedimiento o función.
Forma general de un mensaje:
receptor_mensaje.selector_mensaje [(parámetros)]
p/e ventana_editor.maximizar; documento1.imprimir(2);
-. Clases: son declaraciones o abstracciones de objetos, lo que significa, que una clase es la definición de un objeto. Cuando se programa un objeto y se definen sus características y funcionalidades, realmente se programa una clase.
Para crear una clase se utiliza la palabra
reservada class y a continuación el nombre de la clase. La definición de la
clase se pone entre las llaves de apertura y cierre. El nombre de la clase
empieza por letra mayúscula.
class Rectangulo{
//miembros dato
//funciones miembro
}
-.Instanciación: una instancia se produce con la creación de un objeto perteneciente a una clase (se dice que se instancia la clase). El objeto que se crea tiene los atributos, propiedades y métodos de la clase a la que pertenece. Los objetos y sus características se usan en la construcción de programas, ya sea como contenedores de datos o como partes funcionales del programa.
Características del POO:
-. Abstracción: Mediante la abstracción la mente humana
class Rectangulo{
//miembros dato
//funciones miembro
}
-.Instanciación: una instancia se produce con la creación de un objeto perteneciente a una clase (se dice que se instancia la clase). El objeto que se crea tiene los atributos, propiedades y métodos de la clase a la que pertenece. Los objetos y sus características se usan en la construcción de programas, ya sea como contenedores de datos o como partes funcionales del programa.
Características del POO:
-. Abstracción: Mediante la abstracción la mente humana
modeliza la realidad en forma de objetos. Para
ello busca
parecidos entre la realidad y la posible implementación de
objetos
del programa que simulen el funcionamiento de los
objetos reales.
-.
Encapsulamiento: Uno de los objetivos primordiales de la P.O.O.,
es la creación de objetos que funcionen como entidades complejas, es decir
autosuficientes, una de las reglas del encapsulamiento es que el programador
nunca necesita acceder directamente a los datos de un objeto, en vez de esto se
deben definir métodos dentro del objeto que gobiernen toda la manipulación de
datos. El encapsulamiento está referido, también, a los métodos de cada objeto
en el sentido que su código interno debe ser transparente a la hora de
activarse.
-.Polimorfismo: Se
refiere a la capacidad que tiene el objeto para hacer lo adecuado después de
haber recibido un mensaje, independientemente de quién lo haya enviado. Hay que
tener en cuenta que el polimorfismo se mueve a través de la herencia, dicho de
otra forma trata de hacer posible enviar mensajes genéricos a objetos y que
éstos realicen lo estipulado de acuerdo a su codificación interna, es decir, la
acción varía en relación al receptor del mensaje.
Ejemplo: Se desea enviar un mensaje a dos objetos
distintos (Triángulo y Rectángulo) los cuales podrían ser descendientes de la
clase polígono, sin embargo cuando el triángulo reciba la orden área, la
ejecución de este método se obtendrá a partir de (b*h)/2 en cambio si se activa
el mismo método para el rectángulo el valor se calculará a partir de ð *r2 ,
aún cuando ambos objetos recibieron la misma orden.
-. Herencia: En
términos simples la herencia en la P.O.O. es la capacidad que tiene los objetos
para heredar todas o algunas de sus características (datos) y comportamiento
(procedimientos) a sus descendientes o herederos, permitiendo así la
reutilización de código lo que en la práctica se traduce en una herramienta muy
potente de programación.
Esta herencia puede ser a nivel de estado
(características) o protocolo (métodos y procedimientos) o ambas. La herencia
en la P.O.O tiene sus raíces en el concepto de registros anidados.
Ejemplo:
Type
edades: 0..150;
InfPersona = RECORD
Apellido: integer;
Nombre: integer;
Edad: edades;
end;
grados: 0..12;
InfEstudiante= RECORD
persona: InfPersona;
grado: Grados;
Profesor: string (30);
end;
El registro Inf Persona contiene campos que se
utilizan para describir a cualquier persona. El segundo registro Inf Estudiante,
incluye el campo Persona, que contiene los campos del registro Inf Persona. En
la P.O.O., se utiliza el mismo concepto para construir incrementalmente objetos
que son capaces de heredar algunas o todas las características de sus
ascendientes (objetos padres).
Principio de ocultación.
ResponderEliminarnecesito esto crees que me puedas ayudar por favor