Está en la página 1de 10

COMPOSITE

• Permite componer objetos dentro de


estructuras de árboles para representar
jerarquías del tipo de “todo-parte”. les
permite a los clientes tratar objetos
individuales y objetos componentes de una
única manera o forma.
• Sirve para construir algoritmos u objetos
complejos a partir de otros mas simples
gracias a la composición y a una estructura
de árbol.
• Al poseer todos los objetos una interfaz
común se tratan todos de la misma manera.

DISEÑO DE SISTEMAS
COMPOSITE: ESTRUCTURA

DISEÑO DE SISTEMAS
COMPOSITE: ESTRUCTURA
Componente
declara la interfaz de objetos en la composición. Implementa el
comportamiento predeterminado de la interfaz común para todas las
clases, según el caso. Declara una interfaz para acceder y
gestionar sus componentes hijos.

Leaf
representa objetos hoja en la composición. Una hoja no tiene hijos.
Define el comportamiento para los objetos primitivos en la
composición.

Compuesto
define el comportamiento de los componentes que tienen hijos.
Almacena componentes hijos. Implementa las operaciones
relacionadas con los hijos en la interfaz de componente.

Client
manipula los objetos de la composición a través de la interfaz de
componentes. 4
COMPOSITE

class Patron Composite

«interface»
IPromocion Promo

Radio TV Calle

5
COMPOSITE
class Patron Composite 2

«interface»
Sueldo
+ get_sueldo() : double

Empleado
Composite - nombre_completo: char
- cargo: char
+ get_sueldo() : void
+ get_sueldo() : double

Sector Caj a
Sector Gerencia
- cantidad_empleados: int Sector ... (etc)
+ agregar() : void
+ get_cantidad_empleados() : int + agregar() : void
+ set_cantidad_empleados() : int
+ agregar() : void

DISEÑO DE SISTEMAS
COMPOSITE
La clase para cada sector

7
COMPOSITE
La clase Composite

8
COMPOSITE
La interface:

9
COMPOSITE

DISEÑO DE SISTEMAS

También podría gustarte