You are on page 1of 32

Conceptos bsicos

UML

Cmo definimos a una clase.


Los objetos que tengan los mismos atributos y comportamiento se agrupan en clases. Una clase es una abstraccin que describe (atributos y comportamiento) relevantes para una aplicacin determinada, la eleccin de clases es arbitraria, y depende del dominio del problema. Por lo tanto la clase se puede representar de la siguiente manera:

Alberto Taboada Jimnez

Alberto Taboada Jimnez

Los Procesos
Controles

Otros Diagramas . . .

Entradas

Proceso
Mecanismos

Salidas

{
{

}
}
Alberto Taboada Jimnez

Manejo de Datos con la Clase

Alberto Taboada Jimnez

Cmo Interactan las Capas

Alberto Taboada Jimnez

Diseo de 3 Capas usando Componentes

1.Interfaz

2. Capa de Lgica de
Negocio en Componentes

3.Almacenamiento de
datos

C:\carpeta

b.dll/paquete

a.dll/paquete
b.dll/paquete

a.dll/Paquete

Clase_1
Propiedad 1 Propiedad 2 Propiedad3
Public Sub opera1() Xxxxxx Xxxxx End sub Public Sub opera2() Xxxxxx Xxxxx End sub

Clase_2
Propiedad 1 Propiedad 2 Propiedad3
Public Sub opera1() Xxxxxx Xxxxx End sub Public Sub opera2() Xxxxxx Xxxxx End sub

Clase_3
Propiedad 1 Propiedad 2 Propiedad3
Public Sub opera1() Xxxxxx Xxxxx End sub Public Sub opera2() Xxxxxx Xxxxx End sub

Regreso a Componente

Computadora Pentium II Pedro que paga factura Impresora Mara que emite factura Computadora Pentium III Gino que paga boleta Audfonos

Cuntas clases hay? De que manera manejara estos objetos en 3 capas

Implementacin de Clases
CLASE Inicio alumno

Pblico numMatricula numrico Pblico aPaterno texto Pblico aMaterno texto Pblico nombre texto Pblico estado texto Pblico grado texto ------------------------------------------------------------------------------------------Pblico procedimiento ingresar() Inicio INSERTAR EN t_alumno VALORES(numMatricula,aPaterno,aMaterno Nombre, estado, grado) Fin -----------------------------------------------------------------------------------------Pblico procedimiento consultar(pnMatri) Inicio Declarar vnMatr, vap, vam, vnom, vestado texto vgrado numrico SELECCIONAR vap=c_aPaterno, Vam=c_aMaterno, Vnom=c_cnombre, Vestado=c_estado, vgrado=c_grado DE t_alumno DONDE c_numMatricula=pnMatri aPaterno vap aMaterno vam nombre vnom estado vestado grado vgrado

Componente

fin -----------------------------------------------------------------------------------------Fin

Alberto Taboada Jimnez

Herencia

El concepto de herencia se refiere a la comparticin de atributos y operaciones basada en una relacin jerrquica entre varias clases. Una clase puede definirse de forma general y luego refinarse en sucesivas subclases. Cada clase hereda todas las propiedades (atributos y operaciones) de su superclase y aade sus propiedades particulares.

Ejemplo

Nombre De Clases 1 Empleado 2 Servicio 3 Persona 4 Obrero 5 Equipo de Oficina 6 Servicio de Alquiler Mquinas 7 Artefactos 8 tiles 9 Servicio de llamadas 10 Electrodomsticos 11 Servicio de Impresin 12 Cliente 13 Reglas

Grupos de Atributos 1 Cdigo, Marca, Precio Unitario, Stock 2 Cdigo, Tipo de llegada, Tipo de Saldo 3 Cdigo, Apellido Paterno, Apellido Materno, Nombre, Edad, Direccin 4 Nmero, Fecha, Tipo de Cancelacin (Contado, Crdito) 5 Cdigo, Marca, Precio Unitario, Aos de Garanta

Atributos 1 Sueldo 2 Medida 3 Jornal 4 RUC 5 N Hojas de impresin 6 Precio unitario por impresin 7 N de Minutos 8 Tipo de llamada 9 N de Horas

Constructor

CLASE mesa Inicio Pblico codigo texto Pblico descripcion texto Pblico tipo texto Pblico precio numrico Pblico Procedimiento mesa (pcodigo=, pdescripcion=, ptexto=, pprecio=0) Inicio codigo=pcodigo descripcion=pdescripcion tipo=ptipo precio=pprecio fin

Virtual pblico funcion area()


Protegido Destructor_mesa() Inicio Destruir instancia fin Fin

Destructor

Polimorfismo
Mover

piezaAjedrez

fichaDama

Mover

Mover

Por ejemplo, la operacin mover, es distinta para una pieza de ajedrez que para una ficha de dama, pero ambos objetos pueden ser movidos. Una operacin es una accin o transformacin que realiza o padece un objeto. La implementacin especfica de una operacin determinada en una clase se denomina mtodo.

Clases Derivadas
CLASE mesaRedonda EXTENDIDA mesa Inicio Pblico radio numrico Pblico funcion area() Inicio Declarar vArea,vpi numrico Vpi3.1416 vArea=vpi*(radio * radio) areavArea fin Fin

CLASE mesaRectangular EXTENDIDA mesa Inicio Declarar Pblico largo numrico Pblico ancho numrico Pblico funcion area() Inicio Declarar vArea numrico vArea largo * ancho areavArea Fin Fin

inicio Declarar vLargo, vAncho, vRadio, vArea numrico i_mesaRedonda mesaRedonda i_mesaRectangular mesaRectangular /* Uso de la Instancia mesa redonda */ Leer Medida de Radio:,vRadio i_mesaRedonda.radio vRadio vArea i_mesaRedonda.area imprimir El area de la mesa redonda es,vArea /* Uso de la Instancia mesa rectangular */ Leer Medida de Largo..:,vLango Leer Medida de Ancho..:,vAncho i_mesaRectangular.largo vLargo i_mesaRectangular.ancho vAncho vArea i_mesaRectangular.area Imprimir El rea de la mesa rectngular es, vArea fin

Pgina Web Moto Trabajador Libro Avin Mamfero Revista Ave Auto Bicicleta.

Publicar() Comer() Retroceder() Editar() Revisar() Dormir() Avanzar() Detenerse() Cambiar de Velocidad() Caminar()

Encapsulamiento
La esencia del encapsulamiento (o encapsulacin), es que cuando un objeto trae consigo funcionalidad, esta ltima se oculta

<<ActiveX DLL>> componente1.dll

Un receptor (radio) Caja negra de un avin Chip Lapicero Libro Reloj Cerebro CD Una bombilla de luz Maquina de escribir

Envo de Mensajes
Un sistema de Objetos Trabaja en conjunto. Esto se logra mediante el envo de mensajes entre ellos. Un objeto enva a otro un mensaje para realizar una operacin, y el objeto receptor ejecutar la operacin

TV
Enva mensaje de encendido

Jugador

Pelota

Cocinero

Cocina

Lector

Libro

Chofer

Auto

Profesor

Alumno

Usuario

Equipo de Sonido

Composicin
La idea es similar al concepto de agregacin, con la diferencia que las partes que conforman el objeto no pueden tener independencia, necesitan estar acoplados
prendadeVestir

manga

cuello

bolsillo

solapera

delantera

posterior

Agregacin
Este concepto se aplica cuando las partes que conforman un objeto tienen independencia para que se puedan acoplar a otro objeto con mucha facilidad.

equipodeComputo

teclado

case

monitor

mouse

PC Carro Lmpara Puerta

Cabecera de Factura Detalle Cliente

Mesa Pantaln

Producto

Componentes con Respecto a la Lgica del Negocio


Descuentos Rango1 Rango2 Tasa monto EncontrarTasa(vmonto) CalcularMonto(vmonto)

Uso del Componente

Varios <<DLL>>

Incluir Varios.dll
Descuentos i_Descuentos

EncontrarTasa( Vmonto) Inicio Numrico Vtasa Seleccionar Vtasa=tasa de TB_DSTO Cuando Vmonto>=rango1 y Vmonto<=rango2 Tasa=Vtasa Fin TB_DSTO(Tabla)
i d 1 2 3 rango1 100 201 301 rango2 200 300 400 tasa 0,05 0,06 0,07

i_Descuentos.EncontrarTasa(200) Imprimir i_descuentos.tasa

0,05
Interfaz

Datos

Alberto Taboada Jimnez

Extensiones UML

Extensiones UML
Modelos de Base de Datos Relacionales

En la Actualidad Trabajamos con Base de Datos Relacionales, tal como SQL, Oracle etc.

Diagramas de Clases vs

Modelo E-R

Diagrama Relacional

Diagrama E-R

Diagrama de Clases

Tarjetas CRC Se Utiliza para anlisis guiados por responsabilidades La definicin de las clases son refinadas basndose en las responsabilidades de clase y en otras clases que colaboran para completar su responsabilidad Cada clase se representa en una tarjeta ndice (index card), y los diseadores establecen los papeles (roles) de las clases en el sistema para definir su trabajo,

Extensin informal de UML -- Tarjetas CRC para anlisis guiados por la responsabilidad.

You might also like