Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
y Programacin
III
Qu NO es UML
NO es programacin
No es una metodologa
Qu es UML
Es un lenguaje de modelado
Unified Modeling Lenguage
Lenguaje Unificado de Modelado
Clases
Objetos
Interaccin
Procesos
Roles
C#
Objective C
PHP
Python C++
Java
VB .Net
C#
Objective C
PHP
Python C++
Java
VB .Net
Pa
Cliente'
Una clase es una descripcin de un
conjunto de objetos que comparten los
mismo atributos, operaciones,
relaciones y semntica
Cada clase debe tener un nombre que
la distinga de otras clases. Un nombre
Cliente'
es una cade de texto simple
Persona'
Pared'
Negocio'
Persona'
Sensor'
NombreDeLaClase
atributos
mtodos
NombreDeLaClase
atributos
mtodos
Ejemplo en Java
public class Profesor
{
public String nombre;
private String apellido;
private String CI;
}
Ejemplo en Java
public class Profesor
{
public String nombre;
private String apellido;
private String CI;
}
profesor.apellido = "Prez";
}
Ejemplo en Java
public class Profesor
{
public String nombre;
private String apellido;
private String CI;
public String getApellido()
{
return apellido;
}
public void setApellido(String
apellido)
{
this.apellido = apellido;
}
}
Se implementa
un mtodo set en=Profesor.
profesor.apellido
"Prez";
Dicho
mtodo
es
pblico
(puede
ser
invocado
}
desde otra clase). El mtodo inicializa el valor del
atributo apellido con el parmetro (obviamente
deben ser del mismo tipo)
Ejemplo en Java
public class Profesor
{
Ahora desde Materia y a travs del objeto de
public String nombre;
tipo Profesor, podemos invocar el mtodo
private
String que
apellido;
setApellido
recibe como parmetro el
private
String
CI;
String. Ahora nuestro profesor se apellida Prez
profesor.setApellido("Prez");
}
RCNK 2013
Ing. Ricardo Casanova
En resumen
En el caso de los atributos, olviden lo
explicado anteriormente
Todos los atributos de una clase son
siempre, siempre, siempre, SIEMPRE
privados (salvo algunos casos)
Por qu?
Se garantiza la seguridad del atributo
Slo su clase se encarga de modificar su valor
Relaciones. Herencia
ItemDeLibreria
titulo
codigo
...
Libro
Video
autor
editorial
productor
estudio
...
...
Relaciones. Herencia
ItemDeLibreria
Libro y Video se conocen como las clases hijas o sub clases
titulo
codigo
...
Video
autor
editorial
productor
estudio
...
...
Relaciones. Herencia
ItemDeLibreria
titulo
codigo
...
Libro
Video
autor
editorial
productor
estudio
...
...
La relacin de herencia
puede darse en N cantidad de
niveles. De esta manera D
heredar todos los atributos y
mtodos pblicos de C, B y A
Relaciones. Herencia
ItemDeLibreria
titulo
codigo
...
Libro
Video
autor
editorial
productor
estudio
...
...
Relaciones. Agregacin
Carro
Chasis chasis
Motor motor
...
Chasis
Motor
Carro carro
Carro carro
...
...
Relaciones. Asociacin
La relacin de asociacin permite relacionar clases que colaboran
entre s.
Cliente
...
OrdenDeCompra
...
Cardinalidad
Una orden de compra est asociada a un cliente
Cliente
* (cero o varios)
1..*
OrdenDeCompra
...
Un cliente posee una o ms rdenes de compra
...
Se dice que Cliente est usando la clase Computadora para definir el
atributo
Cliente
String nombre
Computadora equipo
...
Primer ejemplo
Trata de modelar el siguiente problema usando un diagrama de clases de UML:
Los alumnos y los profesores son personas. Por cada persona se conoce su nombre,
apellido, cdula de identidad, direccin y nmero de telfono. De un alumno se conoce
adicionalmente su nmero de expediente y la carrera que est cursando. En el caso de
los profesores, se conoce su cargo en la universidad y facultad a la que est adscrito.
Un alumno asiste a cursos. Los cursos estn impartidos por un nico profesor. El alumno
no puede repetir el mismo curso, pero puede asistir a ms de uno. El profesor puede
impartir diferentes cursos y repetir un mismo curso en varias ocasiones. Para que un
curso se imparta debe haber un mnimo de 10 alumnos y un mximo de 50. De cada
curso se conoce el nombre, carrera a la que pertenece y nmero de UC.
Como registro del curso se guarda la fecha de comienzo, la fecha de finalizacin y la nota
del alumno.