SlideShare una empresa de Scribd logo
1 de 9
(Composite)
• Pablo Torres
• Fabián Yuquilema
DESCRIPCION:
• Este patrón se usa cuando se quiere componer objetos en
  estructuras tipo Árbol para representar su jerarquización, y
  permitir al usuario tratar los objetos tanto individual como
  grupalmente de manera uniforme basado en una
  composición recursiva.

• Esto simplifica el tratamiento de los objetos creados, ya que
  al poseer todos ellos una interfaz común, se tratan todos de
  la misma manera.
Problema que soluciona:

• Cuando desarrollar una aplicación como un editor de
  dibujos y sistemas de circuitos que permiten a los usuarios
  constituir diagramas complejos desde componentes
  simples. (Interfaces Graficas)

• Los objetos simples(hojas) y los contenedores de ellos
  están en diferentes maneras, aunque los clientes tratan
  ambos en la misma manera.

• La clave del patrón Composite:
   – Una clase abstracta que representa ambos objetos los
     simples(hojas) y sus contenedores.
DIAGRAMA DE CLASES:




•   Componente: declara la interfaz para los objetos en la composición, implementa
    comportamientos por defecto comunes para todas las clases
    apropiadamente, declara una interfaz para acceso y manejo de sus
    componentes Hijo.
•   Hoja: representa objetos de la composición que no poseen hijos, define un
    comportamiento para objetos simples.
•   Compuesto: define el comportamiento de los objetos que poseen hijos, guarda
    los mismos, e implementa operaciones relacionadas con los hijos en la interfaz
    del Componente.
Vista diagrama general del patrón Composite.
EJEMPLO:
• UN SISTEMA GRAFICO:
• La subclase compuesta DIBUJO define una agregación de
  objetos de grafico.
   – Implementa Dibujar() para que llame a dibujar a sus hijos.
   – Implementa operaciones para administrar a sus hijos.
   – Una estructura de componer objetos compuestos
     recursivamente.
Conclusiones:
• Define una jerarquía de clases con objetos simples y
  compuestos.

• Simplifica las tareas del cliente. Puede tratar un compuesto
  como un objeto simple.

• Puede añadir nuevos componentes sin modificar la
  estructura ni los códigos de clientes.

• Desventajas:
   – El diseño del programa puede ser demasiado general.
   – Difícil restringir los componentes de un compuesto (Seguridad)
Bibliografía
•   http://dmi.uib.es/people/yuhua/TAP06-07/3.3.pdf

•   http://es.wikipedia.org/wiki/Composite_(patr%C3%B3n_de_dise%C3%B1o)

•   http://siul02.si.ehu.es/~alfredo/iso/06Patrones.pdf

•   http://patronesdediseno.blogspot.com/2009/05/patron-composite.html

•   http://chuidiang.blogspot.com/2005/10/el-patrn-composite.html

•   http://www.apuntes.delibertad.com/java/patron-composite/ - EJEMPLO

Más contenido relacionado

La actualidad más candente

Modelo Entidad Relación Extendido.
Modelo Entidad Relación Extendido.Modelo Entidad Relación Extendido.
Modelo Entidad Relación Extendido.nayis2010
 
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosTópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosJosé Antonio Sandoval Acosta
 
Guia BD conexión Mysql con Java usando Netbeans
Guia BD conexión Mysql con Java usando NetbeansGuia BD conexión Mysql con Java usando Netbeans
Guia BD conexión Mysql con Java usando NetbeansEmerson Garay
 
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...Oswaldo Hernández
 
Componentes de eclipse
Componentes de eclipseComponentes de eclipse
Componentes de eclipsejaquiiMc
 
3. modelo entidad relación extendido
3. modelo entidad relación extendido3. modelo entidad relación extendido
3. modelo entidad relación extendidoGalo Anzules
 
Teoria del modelado de objetos otros diagramas actividad despliegue
Teoria del modelado de objetos otros diagramas actividad despliegueTeoria del modelado de objetos otros diagramas actividad despliegue
Teoria del modelado de objetos otros diagramas actividad despliegueRobert Rodriguez
 
Clases y objetos de java
Clases y objetos de javaClases y objetos de java
Clases y objetos de javainnovalabcun
 
Diagramas de caso de uso
Diagramas de caso de usoDiagramas de caso de uso
Diagramas de caso de usoTensor
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Javamaeusogo
 
Diagramas de estados
Diagramas de estadosDiagramas de estados
Diagramas de estadosstill01
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos josecuartas
 

La actualidad más candente (20)

Modelo Entidad Relación Extendido.
Modelo Entidad Relación Extendido.Modelo Entidad Relación Extendido.
Modelo Entidad Relación Extendido.
 
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datosTópicos Avanzados de Programación - Unidad 4 Acceso a datos
Tópicos Avanzados de Programación - Unidad 4 Acceso a datos
 
Guia BD conexión Mysql con Java usando Netbeans
Guia BD conexión Mysql con Java usando NetbeansGuia BD conexión Mysql con Java usando Netbeans
Guia BD conexión Mysql con Java usando Netbeans
 
Modelo entidad
Modelo entidadModelo entidad
Modelo entidad
 
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
Diagramas de Clases, Secuencia, Patrones de Diseño MVC, Disño de Interfaces d...
 
Componentes de eclipse
Componentes de eclipseComponentes de eclipse
Componentes de eclipse
 
Casos de estudio para diagramas de clases
Casos de estudio para diagramas de clasesCasos de estudio para diagramas de clases
Casos de estudio para diagramas de clases
 
Diseño de patrones
Diseño de patronesDiseño de patrones
Diseño de patrones
 
Procedimientos almacenados
Procedimientos almacenadosProcedimientos almacenados
Procedimientos almacenados
 
3. modelo entidad relación extendido
3. modelo entidad relación extendido3. modelo entidad relación extendido
3. modelo entidad relación extendido
 
Teoria del modelado de objetos otros diagramas actividad despliegue
Teoria del modelado de objetos otros diagramas actividad despliegueTeoria del modelado de objetos otros diagramas actividad despliegue
Teoria del modelado de objetos otros diagramas actividad despliegue
 
Clases y objetos de java
Clases y objetos de javaClases y objetos de java
Clases y objetos de java
 
Diagramas de caso de uso
Diagramas de caso de usoDiagramas de caso de uso
Diagramas de caso de uso
 
Modelado conceptual de aplicaciones web
Modelado conceptual de aplicaciones webModelado conceptual de aplicaciones web
Modelado conceptual de aplicaciones web
 
Uml presentacion
Uml   presentacionUml   presentacion
Uml presentacion
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
 
ARQUITECTURA EN CAPAS.pdf
ARQUITECTURA EN CAPAS.pdfARQUITECTURA EN CAPAS.pdf
ARQUITECTURA EN CAPAS.pdf
 
7.2. funciones sql
7.2.  funciones sql7.2.  funciones sql
7.2. funciones sql
 
Diagramas de estados
Diagramas de estadosDiagramas de estados
Diagramas de estados
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
 

Similar a patron composite

Similar a patron composite (20)

Manual de java_2
Manual de java_2Manual de java_2
Manual de java_2
 
manual 9
manual 9manual 9
manual 9
 
Manual de java 3
Manual de java 3Manual de java 3
Manual de java 3
 
MANUAL DE JAVA 2
MANUAL DE JAVA 2MANUAL DE JAVA 2
MANUAL DE JAVA 2
 
Manual de java 2
Manual de java 2Manual de java 2
Manual de java 2
 
MANUAL DE JAVA 3
MANUAL DE JAVA 3MANUAL DE JAVA 3
MANUAL DE JAVA 3
 
Manual de java 3
Manual de java 3Manual de java 3
Manual de java 3
 
Manual de java 3
Manual de java 3Manual de java 3
Manual de java 3
 
Presentación Vídeo Agenda Estudiantil.
Presentación Vídeo Agenda Estudiantil.Presentación Vídeo Agenda Estudiantil.
Presentación Vídeo Agenda Estudiantil.
 
Patrones estructurados
Patrones estructuradosPatrones estructurados
Patrones estructurados
 
Buider Patron de Diseño
Buider Patron de DiseñoBuider Patron de Diseño
Buider Patron de Diseño
 
Programación orientada a objetos (POO) [JAVA]
Programación orientada a objetos (POO) [JAVA]Programación orientada a objetos (POO) [JAVA]
Programación orientada a objetos (POO) [JAVA]
 
Uml diagrama claseobjeto
Uml diagrama claseobjetoUml diagrama claseobjeto
Uml diagrama claseobjeto
 
bases de datos orientadas a objetos
bases de datos orientadas a objetosbases de datos orientadas a objetos
bases de datos orientadas a objetos
 
Mp.exp.2.330152
Mp.exp.2.330152Mp.exp.2.330152
Mp.exp.2.330152
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
 
Patrones de diseño de software
Patrones de diseño de softwarePatrones de diseño de software
Patrones de diseño de software
 
Uml diagrama clase objeto
Uml diagrama clase objetoUml diagrama clase objeto
Uml diagrama clase objeto
 
Programacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma pooProgramacion orientada a objetos Unidad 1-intro al paradigma poo
Programacion orientada a objetos Unidad 1-intro al paradigma poo
 
Hora 12
Hora 12Hora 12
Hora 12
 

Más de Pablo D. Torres D.

Más de Pablo D. Torres D. (14)

Blog: historia y estado
Blog: historia y estadoBlog: historia y estado
Blog: historia y estado
 
El Blog
El BlogEl Blog
El Blog
 
Informe analisis cibermedio
Informe analisis cibermedioInforme analisis cibermedio
Informe analisis cibermedio
 
Aplicacion de leyes heurísticas
Aplicacion de leyes heurísticasAplicacion de leyes heurísticas
Aplicacion de leyes heurísticas
 
Gestion del tiempo
Gestion del tiempoGestion del tiempo
Gestion del tiempo
 
DRUPAL - caracteristicas
DRUPAL - caracteristicasDRUPAL - caracteristicas
DRUPAL - caracteristicas
 
El proceso unificado
El proceso unificadoEl proceso unificado
El proceso unificado
 
aplicacion de Ecuaciones Diferenciales
aplicacion de Ecuaciones Diferencialesaplicacion de Ecuaciones Diferenciales
aplicacion de Ecuaciones Diferenciales
 
PROPIEDADES ELASTICAS DE LOS SOLIDOS
PROPIEDADES ELASTICAS DE LOS SOLIDOSPROPIEDADES ELASTICAS DE LOS SOLIDOS
PROPIEDADES ELASTICAS DE LOS SOLIDOS
 
OPEN INNOVATION
OPEN INNOVATIONOPEN INNOVATION
OPEN INNOVATION
 
Medios y Hardware de Redes
Medios y Hardware de RedesMedios y Hardware de Redes
Medios y Hardware de Redes
 
Activacion del servicio Mail en Mac OS Server
Activacion del servicio Mail en Mac OS ServerActivacion del servicio Mail en Mac OS Server
Activacion del servicio Mail en Mac OS Server
 
Calculo (derivadas)
Calculo (derivadas)Calculo (derivadas)
Calculo (derivadas)
 
El Calculo Integral
El Calculo IntegralEl Calculo Integral
El Calculo Integral
 

patron composite

  • 2. DESCRIPCION: • Este patrón se usa cuando se quiere componer objetos en estructuras tipo Árbol para representar su jerarquización, y permitir al usuario tratar los objetos tanto individual como grupalmente de manera uniforme basado en una composición recursiva. • Esto simplifica el tratamiento de los objetos creados, ya que al poseer todos ellos una interfaz común, se tratan todos de la misma manera.
  • 3. Problema que soluciona: • Cuando desarrollar una aplicación como un editor de dibujos y sistemas de circuitos que permiten a los usuarios constituir diagramas complejos desde componentes simples. (Interfaces Graficas) • Los objetos simples(hojas) y los contenedores de ellos están en diferentes maneras, aunque los clientes tratan ambos en la misma manera. • La clave del patrón Composite: – Una clase abstracta que representa ambos objetos los simples(hojas) y sus contenedores.
  • 4. DIAGRAMA DE CLASES: • Componente: declara la interfaz para los objetos en la composición, implementa comportamientos por defecto comunes para todas las clases apropiadamente, declara una interfaz para acceso y manejo de sus componentes Hijo. • Hoja: representa objetos de la composición que no poseen hijos, define un comportamiento para objetos simples. • Compuesto: define el comportamiento de los objetos que poseen hijos, guarda los mismos, e implementa operaciones relacionadas con los hijos en la interfaz del Componente.
  • 5. Vista diagrama general del patrón Composite.
  • 7. • La subclase compuesta DIBUJO define una agregación de objetos de grafico. – Implementa Dibujar() para que llame a dibujar a sus hijos. – Implementa operaciones para administrar a sus hijos. – Una estructura de componer objetos compuestos recursivamente.
  • 8. Conclusiones: • Define una jerarquía de clases con objetos simples y compuestos. • Simplifica las tareas del cliente. Puede tratar un compuesto como un objeto simple. • Puede añadir nuevos componentes sin modificar la estructura ni los códigos de clientes. • Desventajas: – El diseño del programa puede ser demasiado general. – Difícil restringir los componentes de un compuesto (Seguridad)
  • 9. Bibliografía • http://dmi.uib.es/people/yuhua/TAP06-07/3.3.pdf • http://es.wikipedia.org/wiki/Composite_(patr%C3%B3n_de_dise%C3%B1o) • http://siul02.si.ehu.es/~alfredo/iso/06Patrones.pdf • http://patronesdediseno.blogspot.com/2009/05/patron-composite.html • http://chuidiang.blogspot.com/2005/10/el-patrn-composite.html • http://www.apuntes.delibertad.com/java/patron-composite/ - EJEMPLO