¿Patrones de diseño comunes en Java?
Normalmente, un patrón de diseño describe una solución probada. Estos esquemas son muy comunes y son los patrones más utilizados con definiciones completas. La formación en TI cree que un modelo general tiene cuatro elementos básicos: nombre del patrón (nombre del patrón), problema (problema), solución (solución) y efectos (consecuencias). Existen los siguientes 10 patrones de diseño de Java comunes:
1. Patrón de puente (Bridge): separe la parte abstracta de su parte de implementación para que puedan cambiar de forma independiente.
2. Modo compuesto (Compuesto): combina objetos en una estructura de árbol para representar la estructura jerárquica "parte-todo". Permite a los clientes utilizar objetos individuales y objetos compuestos de forma coherente.
3. Patrón Abstract Factory (AbstractFactory): Proporciona una interfaz para crear una serie de objetos relacionados o interdependientes sin especificar sus clases específicas.
4. Modo decorador: agrega dinámicamente algunas responsabilidades adicionales a un objeto. En términos de ampliar la funcionalidad, es más flexible en la forma de generar subclases.
5. Modo Adaptador (Adaptador): Convierte la interfaz de una clase en otra interfaz que el cliente desee. El patrón Adaptador permite que clases trabajen juntas que de otro modo no funcionarían juntas debido a interfaces o clases incompatibles.
6. Cadena de Responsabilidad: Desacoplar el remitente y el receptor de la solicitud para que múltiples objetos tengan la oportunidad de procesar la solicitud. Estos objetos están conectados en una cadena y la solicitud se pasa a lo largo de la cadena hasta que un objeto la maneja.
7. Método de fábrica (FactoryMethod): define una interfaz para crear objetos y deja que las subclases decidan qué clase crear una instancia. FactoryMethod permite aplazar la creación de instancias de una clase a sus subclases.
8. Modo Constructor (Builder): Separa la construcción de un objeto complejo de su representación, de modo que un mismo proceso de construcción pueda crear diferentes representaciones.
9. Modo fachada (Facade): proporciona una interfaz consistente para un conjunto de interfaces en un subsistema. El modo fachada define una interfaz de alto nivel, lo que hace que este subsistema sea más fácil de usar.
10. Modo de comando (comando): encapsula una solicitud como un objeto, de modo que los clientes puedan parametrizarse con diferentes solicitudes; poner en cola solicitudes o registrar registros de solicitudes y admitir operaciones cancelables.