lunes, 15 de diciembre de 2008

Un poco de UML (V 0.1)

Uno de los principales objetivos del programador Java es crear objetos para construir un sistema y mediante este resolver un problema.

Al alcance del problema a resolver se le denomina dominio del problema

Por ejemplo, el dominio de un problema podría ser: Crear un sistema que permita a las personas que ingresan órdenes de compra, entrar y aceptar pagos para una orden. Así, el dominio del problema describe brevemente lo que el desarrollador debe resolver.

Enseguida se procede a la captura de requerimientos mediante casos de uso.

Luego se deben identificar los objetos, a partir de los casos de uso, que interactuan para resolver el problema. Al respecto:

  • Los objetos pueden se físicos o conceptuales. Por ejemplo, una cuenta de un cliente es un objeto conceptual y un cajeto automático es un objeto físico.
  • Los objetos tienen características llamados atributo. Por ejemplo, color, forma, otros.
  • El valor de todos los atributos de un objeto se denomina estado del objeto. Por ejemplo, un objeto puede tener su atributo color en valor "rojo".
  • Los objetos tiene operaciones que son las acciones que los objetos peuden desarrollar. Por ejemplo, asignar un valor, desplegar una pantalla o invrementar una velocidad.
  • Al conjunto de operaciones que un objeto puede realizar se conoce con el nombre del comportamiento del objeto
Por lo general, los nombre de los objetos son sustantivos (por ejemplo, cuenta, camisa) los atributos de los objetos son sustantivos (por ejemplo, color, tamaño) y las operaciones son verbos o combinaciones de verbos y sustantivos (por ejemplo, desplegar, enviar orden).

Por ejemplo, una puerta es un objeto en le dominio del problema "construir casa". Este objeto tiene al menos un atributo con valor abierta o cerrada y una operación cerrar la puerta.

Veamos algunas definiciones de clase:
  • Un conjunto de elementos con característics comunes.
  • La declaración o abastracción de un objeto cuando se programa según el paradigma de orientación a objetos.
  • Lo anterior significa que una clase es la definición de un objeto.
  • Es un contenedor de datos (atributos) junto con las operaciones de manipulación de dichos datos.

class Nombre {

// Variables miembro (habitualmente privadas)
miembro_1;
miembro_2;
miembro_3;

//Métodos (habitualmente públicos)
metodo_1( );
metodo_2 ( );

// Propiedades (habitualmente públicas)
propiedad_1;
propiedad_2;
propiedad_3;
propiedad_4;
}

Las propiedades se generan para dar acceso a las variables miembro de la clase (que habitualmente son privadas) y para mantener la coherencia.






No hay comentarios: