Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1. Fundamentacion Teorica...............................................................................3
1.1. Patron Composite....................................................................................3
1.2. Objetivo del Patron de diseño Composite...............................................3
1.3. Aplicabilidad............................................................................................3
2. Estructura Generica.......................................................................................3
2.1. Diagrama General...................................................................................3
2.2. Participantes............................................................................................4
3. Ventajas y Desventajas..................................................................................5
3.1. Ventajas...................................................................................................5
3.2. Desventajas.............................................................................................5
4. Ejemplo: Mensajes y Replies de un Foro......................................................5
4.1. Descripcion..............................................................................................5
4.2. Diagrama de clases dinamico.................................................................5
4.3. Código.....................................................................................................6
4.4. Output......................................................................................................7
5. Bibliografía.....................................................................................................8
1. Fundamentacion Teorica
1.1. Patron Composite
Este patrón Composite en español “Compuesto”, pertenece a la
familia de los “patrones de diseños estructurales”, este patrón sirve
para construir objetos complejos a partir de otros más simples y
similares entre sí, creando una composición recursiva una estructura
de árbol.
1.3. Aplicabilidad
Se Aplica cuando:
El usuario ignora la diferencia entre composiciones de objetos
y objetos individuales.
Si se detecta que se están utilizando varios objetos de la
misma manera, y con frecuencia tienen código casi idéntico
para manejarlos.
2. Estructura Generica
2
2.2. Participantes
Los participantes del patron son los siguientes:
3
3. Ventajas y Desventajas
3.1. Ventajas
Mejora la realización de código y facilita la refactorización.
Define jerarquías de clases que consisten en objetos simples y en
composiciones de esos objetos.
Hace al cliente más simple.
3.2. Desventajas
Puede afectar el rendimiento del programa por el hecho de que
cualquier operación llamada en un compuesto se transmite a
todos sus hijos.
Puede hacer nuestro diseño demasiado general.
4
4.3. Código
public abstract class Component {
protected String usr;
protected String msj;
}
import java.util.ArrayList;
import java.util.List;
public class Composite extends Component{
@Override
public void comentar() {
for (Component c: componentes){
System.out.print("REPLY TO ");
c.comentar();
}
System.out.println(this.usr +" -> "+this.msj);
}
@Override
public void addReply(Component component) {
componentes.add(component);
}
}
public class Leaf extends Component {
public Leaf(String usr,String msj) {
super(usr,msj);
}
@Override
5
public void addReply(Component component) {
}
@Override
public void comentar() {
System.out.println(this.usr +" -> "+msj);
}
}
public class ReplyForo {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Component leaf = new Leaf("Modric","Hola soy
nuevo por aca");
leaf.comentar();
}
}
4.4. Output
6
5. Bibliografía
DEBRAUWER, L. (s.f.). Patrones de diseño en Java.
Madrid, U. C. (2007/08). Tecnicas de Programacion Patron de Diseño
Composite. Recuperado el 5 de Junio de 2017, de
arantxa.ii.uam.es/~eguerra/docencia/0708/09%20Command.pdf