martes, 12 de noviembre de 2013

Uso de la orientación a objetos - Parte 2 de 3





Atributos, operaciones y concepción

Hasta ahora, hemos tratado a las clases como entidades aisladas, y hemos visto todos los atributos y operaciones de una clase. No obstante, en la práctica mostrará más de una clase a la vez; cuando lo haga, no será muy útil que siempre aparezcan todos los atributos y operaciones, ya que el hacerlo le crearía un diagrama muy saturado. En lugar de ello podrá tan sólo mostrar el nombre de la clase y dejar ya sea el área de atributos o el de operaciones (o ambas) vacía, como se muestra en la siguiente figura.

En la práctica, no siempre mostrará todos los atributos y operaciones de una clase.

En ocasiones será bueno mostrar algunos (pero no todos) de los atributos u operaciones. Para indicar que sólo enseñará algunos de ellos, seguirá la lista de aquellos que mostrará con tres puntos (...). mismos que se conocen como puntos suspensivos. A la omisión de ciertos o todos los atributos y operaciones se le conoce como abreviar una clase. La siguiente figura le muestra el uso de los puntos suspensivos.

Los puntos suspensivos indican atributos u operaciones que no se encuentran en todo el conjunto.

Si usted tiene una larga lista de atributos u operaciones podrá utilizar un estereotipo para organizarla de forma que sea más comprensible. Un estereotipo es el modo en que el UML le permite extenderlo, es decir, crear nuevos elementos que son específicos de un problema en particular que intente resolver. Como lo mencioné en la hora 1, usted muestra un estereotipo como un nombre bordeado por dos pares de paréntesis angulares.
Para una lista de atributos, podrá utilizar un estereotipo como encabezado de un subconjunto de atributos, como en la siguiente figura.

Podrá usar un estereotipo para organizar una lista de atributos u operaciones.


El estereotipo es una estructura flexible, la cual podrá utilizar de diversos modos. Por ejemplo, podrá utilizar el estereotipo sobre el nombre de una clase en un símbolo de clase para indicar algo respecto al papel de la clase.


Responsabilidades y restricciones

El símbolo de clase le permite establecer otro tipo de información de sí misma.
En un área bajo la lista de operaciones, podrá mostrar la responsabilidad de la clase. La responsabilidad es una descripción de lo que hará la clase, es decir, lo que sus atributos y operaciones intentan realizar en conjunto. Una lavadora, por ejemplo, tiene la responsabilidad de recibir ropa sucia y dar por resultado ropa limpia.

En el símbolo, indicará las responsabilidades en un área inferior a la que contiene las operaciones (vea la siguiente figura).

En un símbolo de clase que irá debajo de la lista de operaciones, escribirá las responsabilidades de la clase.

La idea es incluir información suficiente para describir una clase de forma inequívoca.
Una manera más formal es agregar una restricción, un texto libre bordeado por llaves; este texto especifica una o varias reglas que sigue la clase. Por ejemplo, suponga que en la clase Lavadora usted desea establecer que la capacidad de una lavadora será de 7, 8 o 9 Kg (y así, “restringir” el atributo capacidad de la clase Lavadora). Usted escribirá {capacidad = 7, 8 o 9 Kg} junto al símbolo de la clase Lavadora. La figura siguiente le muestra cómo hacerlo.

La regla entre llaves restringe al atributo capacidad para contener uno de tres posibles valores.

El UML funciona con otra forma -aún más formaI- de agregar restricciones que hacen más explícitas las definiciones. Es todo un lenguaje conocido como OCL (Lenguaje de restricción de objetos). OCL cuenta con su propio conjunto de reglas, términos y operadores, lo que lo convierte en una herramienta avanzada y, en ocasiones, útil.


Notas adjuntas

Por encima y debajo de los atributos, operaciones, responsabilidades y restricciones, puede agregar mayor información a una clase en la figura de notas adjuntas.
Con frecuencia agregará una nota a un atributo u operación. La siguiente figura le muestra una nota que se refiere a una norma gubernamental que indica dónde encontrar la manera en que se generan los números de serie para los objetos de la clase Lavadora.

Una nota adjunta proporciona mayor información respecto a la clase.

Una nota puede contener tanto una imagen como texto.


Espero haber ayudado en algo. Hasta la próxima oportunidad! 






No hay comentarios:

Publicar un comentario en la entrada