¿Qué patrón te permite tratar de forma uniforme un objeto individual y un grupo de objetos (un árbol, como carpetas que contienen archivos y carpetas)?
Opciones
- Composite (Opción correcta)
- Command
- Singleton
- Observer
Respuesta
Composite
Por qué
Composite: tanto una hoja (archivo) como un contenedor (carpeta) implementan la misma interface, así que el código cliente puede llamar a size() en cualquiera. Un contenedor llama al mismo método en todos sus hijos.
Ejemplos: sistema de archivos, árboles de componentes de UI (un panel con botones y paneles), organigramas, menús.
Recuerda
Composite = árbol donde hoja y grupo comparten una interface.