SlideShare una empresa de Scribd logo
1 de 27
Descargar para leer sin conexión
Representando objetos en UML 
Unobjetoesrepresentadocomounrectánguloconunnombresubrayado 
J Clark : Profesor 
: Profesor 
Objeto nombrado 
Objeto sin nombrar 
Profesor J Clark
 
Abstracción 
Encapsulación 
Modularidad 
Jerarquía 
Principios de orientación a objetos
 
Unaabstracciónesunmodeloqueincluyelosaspectosesenciales,masimportantesodistintivosdealgoyquesuprimeoignoralosdetallesmenosimportantes.Unaabstraccióneselresultadodeeliminardistincionesparaenfatizarlocomún. 
Abstracción 
Estudiante 
Profesor
 
Eslalocalizacióndecaracterísticas,talescomopropiedadesycomportamientos,enunasolaabstracciónqueocultasuimplementaciónydecisionesdediseñoasociadasdetrásdeunainterfazpública. 
Laclavedelaencapsulacióneslainterfazdemensajesdeobjetos.Lainterfazaseguraquetodalacomunicaciónconelobjetosellevaacaboatravésdeunconjuntodeoperacionespredefinidas.Laspropiedades(atributos)quehansidoencapsuladasnopuedensermanipuladassinutilizarlainterfazprovista. 
Encapsulación
 Ejemplo encapsulación 
TakeSabbatical() 
Name: J Clark 
Employee ID: 567138 
HireDate: 07/25/1991 
Status: Tenured 
Discipline: Finance 
MaxLoad:4 
Professor ClarkSetMaxLoad(4)
Modularidad 
Esladescomposiciónlógicadelascosasengruposmaspequeñosysimplesqueincrementanloslogrosdelaingenieríadesoftware. 
Usualmenteelsistemaendesarrolloesdemasiadocomplejoparaentenderlo.Parahacereseentendimientomasfácil,elsistemasedivideencomponentesmaspequeñosquepuedenserdesarrolladosymantenidosindependientemente.Eldividirunsistemagrandeycomplejoenunconjuntodepiezasmaspequeñasymanejablessellamamodularidad.
 
Escualquierclasificaciónuordenamientodeabstraccionesenunaestructuradeárbol.Existendiferentestiposdejerarquía:deagregación,clases, contenido,herencia,partición,especializaciónytipos(Diccionariodetecnologíadeobjetos) 
Lajerarquíaorganizadiferenteselementosengruposocategoríasqueindicansurelación.Porejemplolabotánicayzoologíaorganizanplantasyanimalesenfamilias,especiesyasísucesivamente.Encualquiersistemapuedenhabermúltiplesjerarquías. 
Jerarquía
 
Existenmuchosobjetosidentificadosenundominio 
Unaclaseesunadescripcióndeungrupodeobjetosquecompartenlosmismosatributos,operacionesysemántica. 
Unobjetoesunainstanciadeunaclase 
Unaclaseesunaabstracciónporque: 
Enfatizacaracterísticasrelevantes 
Suprimeotrascaracterísticas 
Laabstracciónnosayudaamanejarlacomplejidad 
Clases
 
Unaclaseenunadefiniciónabstractadeunobjeto 
Definelaestructuraycomportamientodecadaobjetoenlaclase 
Sirvecomounaplantillaparacrearobjetos 
Relación entre clases y objetos
 
Unnombredeclasedebeserelsustantivoensingularquemejorcaracterizalaabstracción 
Dificultadaldarnombrealaclasepuedeserindiciodeunaabstracciónpobrementedefinida 
Losnombresdebenprovenirdirectamentedelvocabulariodeldominio 
Nombres de clases
 
Unaformadeverunaclaseesqueestaconstadedospartes:lainterfazylaimplementación 
Lainterfazpuedeverseyserusadaporotrosobjetos(clientes) 
Laimplementaciónpermaneceocultaparalosclientes 
Ocultarlosdetallesdelaimplementacióndeunobjetosellamaencapsulamientouocultarinformación 
Elencapsulamientoofrecedostiposdeprotección.Protege: 
Elestadointernodeunobjetodecorromperseporpartedelosclientes 
Elcódigodelclientedecambiosenlaimplementacióndelobjeto 
Clases y encapsulamiento
 
Elcódigodelclientepuedeusarlainterfaseparaunaoperación 
Elcódigodelclientepuedeaprovecharlaimplementacióndeunaoperación 
Laimplementaciónpuedecambiarpara: 
Corregirunfalla 
Mejorarrendimiento 
Reflejaruncambiodepolíticas 
Elcódigodelclientenoseveráafectadoporcambiosenlaimplementación,reduciendoel“efectodeonda”enelqueunacorrecciónaunaoperaciónfuerzaaunacorreccióncorrespondienteenunaoperacióndelclientequeasuvezcausauncambioenunclientedelcliente... 
Beneficios del encapsulamiento
 Relaciones entre clases
 
Eslarelaciónsemánticaentredosomasclasificadoresqueespecificaconexionesentresusinstancias 
Unarelaciónestructural,especificandoqueobjetosdeunacosaestánconectadosaobjetosdeotra 
Lasasociacionesserepresentanenlosdiagramasdeclasesconunalíneaqueconectalasclasesasociadas 
¿Qué es una asociación? 
Student 
<<Entity>> 
Schedule<<Entity>>
 
Paraclarificarsusignificado,selepuededarnombreaunaasociación 
Elnombreserepresentacomounaetiquetacolocadasobrelalíneadeasociaciónenelmedioentrelosíconosdelasclases 
Usualmenteunnombredeasociaciónesunverboounafraseconverbos 
Nombrando asociaciones 
<<entidad>> 
Curso 
<<controlador>> 
ManejadorInscripción 
maneja
 
Eselnúmerodeinstanciasdeunaclasequeserelacionaconunainstanciadeotraclase 
Paracadaasociación,haydosdecisionesdemultiplicidadahacer,unaparafinaldelaasociación 
Porejemplo,enlaconexiónentrePersonainterpretandoelroldelmaestroyCurso 
ParacadainstanciadePersona,muchos(ceroomás) cursospuedenimpartirse 
ParacadainstanciadeCurso,exactamenteunaPersonaeselmaestro 
¿Qué es multiplicidad? 
Professor 
<<Entity>> 
CourseOffering<<Entity>> 
0..1 
0..* 
+ instructor
Indicadores de multiplicidad 
Sin especificar 
Exactamente uno 
1 
Cero o mas 
0..* 
Cero o mas 
* 
Uno o mas 
1..* 
Cero o uno 
0..1 
Rango específico 
2..4 
Rango disjunto 
2,4,6 
La multiplicidad responde dos preguntas: 
•¿La asociación es obligatoria o es opcional? 
•¿Cuál es el mínimo y máximo número de instancias que se pueden enlazar a una instancia?
 
Esunaformaespecialdeasociaciónquemodelaunarelacióntodo-parteentreunagregado(eltodo)ysuspartes 
Esunarelación“espartede” 
Lamultiplicidadserepresentacomoenotrasasociaciones 
¿Qué es agregación? Parte 
Todo 
0..1 
1
 
Ejemplosdeagregación.Unabibliotecacontienelibros,undepartamentoestáintegradoporempleados.Paramodelarunaagregación,elagregado(departamento)tieneunarelacióndeagregaciónconsuspartes(empleados). 
Unarelacióndeagregaciónquetieneunamultiplicidadmayoraunoparaelagregadoesllamadacompartida(shared).Destruyendoelagregadononecesariamentesedestruyeasuspartes.Seutilizacuandoexisteunarelaciónfuerteentredosclases,demaneraquelamismainstanciapuedeparticiparendosdiferentesagregaciones 
Agregación
 
Sidosobjetosestánfirmementeunidosporunarelacióntodo-parte 
Larelaciónesunaagregación 
Silosdosobjetosseconsideranusualmentecomoindependientes,aúncuandomuchasvecesseenlazan 
Larelaciónesunaasociación 
¿Agregación o asociación?
 
¿Lafrase“partede”esusadaparadescribirlarelación? 
UnaPuertaes“partede”unCarro 
¿Algunasoperacioneseneltodoautomáticamenteseaplicanasuspartes? 
MoverelCarro,MoverlaPuerta 
¿Sepropaganalgunosdelosvaloresdelosatributosdeltodoatodasoalgunasdesuspartes? 
ElCarroesazul,laPuertaesazul 
¿Existeunaasimetríaintrínsecaenlarelacióndondeunaclaseessubordinadaalaotra? 
UnaPuertaESpartedeunCarro,unCarroNOESpartedeunaPuerta 
Pruebas agregación
 
Esunarelaciónentreclasesdondeunaclasecompartelaestructuray/ocomportamientodeunaomasclases 
Defineunajerarquíadeabstraccionesenlacualunasubclaseheredadeunaomassuperclases 
Esunarelación“esuntipode” 
Generalización
 
Ejemplo: herencia simple 
Superclase (Padre) (Ancestro) 
Subclases (Hijo) (Descendientes) 
Relación de generalización 
CheckingSavings 
Account-balance-name 
-number 
+ withdraw() 
+ createStatement()
 
Ejemplo: herencia múltipleFlyingThingAnimalHorse 
WolfBirdHelicopterAirplaneHerencia múltiple
 
Unasubclaseheredalosatributos,operacionesyrelacionesdelpadre 
Unasubclasepuede 
Agregaratributos,operacionesorelacionesadicionales 
Redefiniroperacionesheredadas 
Losatributos,operacionesy/orelacionessemuestranalnivelaplicablemasaltoenlajerarquía 
¿Qué se hereda?
 
Yaquelasrelacionesdeherencianoserefierenaobjetosindividuales 
Larelaciónnotienenombre 
Lamultiplicidadnotienesentido 
Teóricamentenohaylímiteenelnúmerodenivelesenlasjerarquías 
Enlapráctica,losnivelesdebenlimitarse. Entre3y5niveles. 
Consideraciones de herencia

Más contenido relacionado

Destacado

Antónimos
AntónimosAntónimos
AntónimosSandy-66
 
FOAD et Handicaps : le dispositif CNED/CFA-SACEF (20080319)
FOAD et Handicaps : le dispositif CNED/CFA-SACEF (20080319)FOAD et Handicaps : le dispositif CNED/CFA-SACEF (20080319)
FOAD et Handicaps : le dispositif CNED/CFA-SACEF (20080319)FFFOD
 
Presse au futur (1)
Presse au futur (1)Presse au futur (1)
Presse au futur (1)Capra
 
Tutorial de netvibes
Tutorial de netvibesTutorial de netvibes
Tutorial de netvibesalexandra4321
 
Numérisation de substitution
Numérisation de substitutionNumérisation de substitution
Numérisation de substitutionLedjit
 
Ça tourne au CIFA TP - Atelier 9R
Ça tourne au CIFA TP - Atelier 9RÇa tourne au CIFA TP - Atelier 9R
Ça tourne au CIFA TP - Atelier 9RFFFOD
 
Gazette du 12 octobre au 18 novembre 2010
Gazette du 12 octobre au 18 novembre 2010Gazette du 12 octobre au 18 novembre 2010
Gazette du 12 octobre au 18 novembre 2010Ciné-Club Atmosphères
 
El libro azul
El libro azulEl libro azul
El libro azululisbro
 
Pptfotospasoadelante
PptfotospasoadelantePptfotospasoadelante
Pptfotospasoadelantegvmoor
 
L'agrégation de données géodécisionnelles : questions pour mieux la définir
L'agrégation de données géodécisionnelles : questions pour mieux la définirL'agrégation de données géodécisionnelles : questions pour mieux la définir
L'agrégation de données géodécisionnelles : questions pour mieux la définirACSG Section Montréal
 
Casablanca 2010 - Financement de la lutte contre le sida: plus et mieux
Casablanca 2010 - Financement de la lutte contre le sida: plus et mieuxCasablanca 2010 - Financement de la lutte contre le sida: plus et mieux
Casablanca 2010 - Financement de la lutte contre le sida: plus et mieuxVih.org
 
A la conquête de la Suisse alémanique
A la conquête de la Suisse alémaniqueA la conquête de la Suisse alémanique
A la conquête de la Suisse alémaniquealineisoz.ch
 
Laboratorio i de turbomaquinas
Laboratorio i de turbomaquinasLaboratorio i de turbomaquinas
Laboratorio i de turbomaquinasDiana Iguaran
 

Destacado (20)

Antónimos
AntónimosAntónimos
Antónimos
 
FOAD et Handicaps : le dispositif CNED/CFA-SACEF (20080319)
FOAD et Handicaps : le dispositif CNED/CFA-SACEF (20080319)FOAD et Handicaps : le dispositif CNED/CFA-SACEF (20080319)
FOAD et Handicaps : le dispositif CNED/CFA-SACEF (20080319)
 
Presse au futur (1)
Presse au futur (1)Presse au futur (1)
Presse au futur (1)
 
Tutorial de netvibes
Tutorial de netvibesTutorial de netvibes
Tutorial de netvibes
 
Numérisation de substitution
Numérisation de substitutionNumérisation de substitution
Numérisation de substitution
 
Ça tourne au CIFA TP - Atelier 9R
Ça tourne au CIFA TP - Atelier 9RÇa tourne au CIFA TP - Atelier 9R
Ça tourne au CIFA TP - Atelier 9R
 
Grand m pouvoir
Grand m pouvoirGrand m pouvoir
Grand m pouvoir
 
Presentation Famille Madrid
Presentation Famille MadridPresentation Famille Madrid
Presentation Famille Madrid
 
Pwp part 3
Pwp part 3Pwp part 3
Pwp part 3
 
Gazette du 12 octobre au 18 novembre 2010
Gazette du 12 octobre au 18 novembre 2010Gazette du 12 octobre au 18 novembre 2010
Gazette du 12 octobre au 18 novembre 2010
 
Collectivité nouveaux usages du web v2
Collectivité   nouveaux usages du web v2Collectivité   nouveaux usages du web v2
Collectivité nouveaux usages du web v2
 
Rhinoplastie, chirurgie esthétique pour refaire son nez
Rhinoplastie, chirurgie esthétique pour refaire son nezRhinoplastie, chirurgie esthétique pour refaire son nez
Rhinoplastie, chirurgie esthétique pour refaire son nez
 
El libro azul
El libro azulEl libro azul
El libro azul
 
Pptfotospasoadelante
PptfotospasoadelantePptfotospasoadelante
Pptfotospasoadelante
 
L'agrégation de données géodécisionnelles : questions pour mieux la définir
L'agrégation de données géodécisionnelles : questions pour mieux la définirL'agrégation de données géodécisionnelles : questions pour mieux la définir
L'agrégation de données géodécisionnelles : questions pour mieux la définir
 
Presentation leduc
Presentation leducPresentation leduc
Presentation leduc
 
Dia de la madre JA
Dia de la madre JADia de la madre JA
Dia de la madre JA
 
Casablanca 2010 - Financement de la lutte contre le sida: plus et mieux
Casablanca 2010 - Financement de la lutte contre le sida: plus et mieuxCasablanca 2010 - Financement de la lutte contre le sida: plus et mieux
Casablanca 2010 - Financement de la lutte contre le sida: plus et mieux
 
A la conquête de la Suisse alémanique
A la conquête de la Suisse alémaniqueA la conquête de la Suisse alémanique
A la conquête de la Suisse alémanique
 
Laboratorio i de turbomaquinas
Laboratorio i de turbomaquinasLaboratorio i de turbomaquinas
Laboratorio i de turbomaquinas
 

Similar a Clase 4 conceptos poo (20)

Tm04 modelo de clases
Tm04 modelo de clasesTm04 modelo de clases
Tm04 modelo de clases
 
Modelo entidad relacion extendido
Modelo entidad relacion  extendidoModelo entidad relacion  extendido
Modelo entidad relacion extendido
 
Fun_01_fundamentacion_objetos
Fun_01_fundamentacion_objetosFun_01_fundamentacion_objetos
Fun_01_fundamentacion_objetos
 
Introduccion a Uml
Introduccion a Uml Introduccion a Uml
Introduccion a Uml
 
Vista lógica
Vista lógicaVista lógica
Vista lógica
 
Intro oo2
Intro oo2Intro oo2
Intro oo2
 
Intro oo2
Intro oo2Intro oo2
Intro oo2
 
Intro oo2
Intro oo2Intro oo2
Intro oo2
 
Primeraclaseobjetos clases
Primeraclaseobjetos clasesPrimeraclaseobjetos clases
Primeraclaseobjetos clases
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
Primeraclaseobjetos Clases
Primeraclaseobjetos ClasesPrimeraclaseobjetos Clases
Primeraclaseobjetos Clases
 
Modelo entidad relacion extendido
Modelo entidad relacion  extendidoModelo entidad relacion  extendido
Modelo entidad relacion extendido
 
presentacion-tema-i-unidad-ii.GFGFHFHGppt
presentacion-tema-i-unidad-ii.GFGFHFHGpptpresentacion-tema-i-unidad-ii.GFGFHFHGppt
presentacion-tema-i-unidad-ii.GFGFHFHGppt
 
Aprender A Abstraer
Aprender  A  AbstraerAprender  A  Abstraer
Aprender A Abstraer
 
CLASES DE DIAGRAMAS
CLASES DE DIAGRAMAS CLASES DE DIAGRAMAS
CLASES DE DIAGRAMAS
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Bases de Datos - Parte 4/10 Modelo ER continuación
Bases de Datos - Parte 4/10 Modelo ER continuaciónBases de Datos - Parte 4/10 Modelo ER continuación
Bases de Datos - Parte 4/10 Modelo ER continuación
 
diapositivas_basicas_sobre_la_notacion_uml.pptx
diapositivas_basicas_sobre_la_notacion_uml.pptxdiapositivas_basicas_sobre_la_notacion_uml.pptx
diapositivas_basicas_sobre_la_notacion_uml.pptx
 
Manual de Java
Manual de JavaManual de Java
Manual de Java
 
Modelado con clases instancias
Modelado con clases instanciasModelado con clases instancias
Modelado con clases instancias
 

Clase 4 conceptos poo