Está en la página 1de 2

Introducción al

Análisis Orientado a Objetos

Clase
Es una descripción de uno o más objetos con un conjunto uniforme de atributos y servicios; que describe cómo
crear nuevos objetos en la clase (constructores) y como disponer de ellos (destructores), en Pascal se declara de
la siguiente forma:

type
NombreDeLaClase = object
{ Declaración de atributos: }
atributo : tipo;
...
{ Declaración de servicios: inicilización (constructor),
terminación (destructor), interfaz,, obtención
y modificación de atributos }

[procedure|function|constructor|destructor] servicio (parámetros);


...
end;

Los elementos (atributos o servicios) pueden ser public o private, agrupados y declarando primero atributos y
posteriormente servicios. Es deseable que todos los atributos queden en la parte privada. Una clase no es una
variable en memoria, es únicamente la descripción, el machote o plantilla que describe cada uno de los elementos
y su forma de utilización.
En notación gráfica se denota como sigue:

Objeto:
Es una abstracción de algo dentro del análisis de un problema, refleja las capacidades de un sistema para man-
tener información acerca del mismo y para interactuar con él; provee protección (encapsulamiento) de valores de
los atributos y contiene servicios exclusivos. Un objeto es una variable en memoria, que toma como molde a una
clase. En pascal se declara de la siguiente forma:

var
ObjetoDeLaClase : NombreDeLaClase;

Atributo:
Describe una unidad de información del objeto, puede ser color, posición, etc. Cuanquier “propiedad” o carac-
terística del objeto que pueda cambiarse para distinguirlo de otros objetos de la misma clase. Se declara en Pas-
cal, agregando campos a la estructura de la clase.

Servicio:
Son funciones o procedimientos que se utilizan para:
a) Generar un objeto, se conoce como constructor y su función es la de crear un objeto en memoria con cier-
tas características particulares (inicialización).
b) Destruir un objeto, se conoce como destructor y su función es la de disponer del objeto y de la memoria
que utiliza para su almacenamiento, guardando la integridad del sistema.
c) Interfaz: para activar un comportamiento del objeto, por ejemplo hacer que se dibuje en pantalla, que se
almacene en disco, etc.
d) Obtención y modificación de atributos, sirven para acceder a la parte privada (o protegida) del objeto y al-
terar la información guardando la integridad del sistema.
En Pascal se declara agregando servicios a la estructura de la clase.

Estructuras de análisis:
Herencia (Estructura general-Específico)
Permite realizar una jerarquía de clases y objetos, donde una clase más general “hereda” características y ser-
vicios a las clases descendientes o específicas, sirve para eliminar redundancia de código y disminuye el tiempo de
programación y mantenimiento del código. De hecho, si quisiera agregar características nuevas a su aplicación con
seguridad podrá hacer pequeños cambios a las clases superiores de la jerarquía y ver los resultados reflejados
instantáneamente en los descendientes. La estructura de herencia se implementa en Pascal de la siguiente forma:

type
ClaseGeneral = object
{ declaración de la clase general }
end;

ClaseEspec1 = object
{ declaración de una clase específica }
end;

ClaseEspec2 = object
{ declaración de otra clase especializada }
end;

En forma gráfica se declara de la siguiente manera:

Estructura Todo-Partes
Generalmente se utiliza para generar colecciones (arreglos, pilas, listas, etc.) de información o para manejar
elementos de una estructura compleja en partes manejables. Si las estructuras son polimórficas considere imple-
mentar una jerarquía de objetos y agregue la palabra virtual al final de la declaración del servicio que desee que
sea de comportamiento propio de cada elemento. La clase Todo funciona como un contenedor de Clases-Parte.
En forma gráfica la estructura todo-partes se representa de la siguiente manera:
Clase todo (contenedor)
-Atributos
-...
+Servicios()
+...()

1
*

Clase parte
-...
+...()

Lo anterior indica que un objeto de la “Clase parte” puede partenecer a una “Clase Todo” y la “Clase Todo” puede
tener varias instancias de la “Clases Parte”.

También podría gustarte