JavaRush /Blog Java /Random-ES /Patrones de diseño en Java [Parte 1]
Ivan Zaitsev
Nivel 33
Киев

Patrones de diseño en Java [Parte 1]

Publicado en el grupo Random-ES
Este es un breve artículo sobre patrones de diseño en Java. No habrá implementación de patrones, solo hay una lista de patrones que existen en java y su breve contenido. Será útil para quienes ya están en el tema para la repetición y generalización. O, por el contrario, para aquellos que se acercaron a los patrones por primera vez, para tener una primera visión general del tema, antes de profundizar más. Los patrones de diseño (plantillas de diseño) son soluciones listas para usar para problemas de programación que se encuentran con frecuencia. Esta no es una clase o una biblioteca que pueda conectarse a un proyecto, es algo más. En cada caso concreto se implementan patrones de diseño adecuados a la tarea. Debe recordarse que este patrón, si se aplica incorrectamente o al problema equivocado, puede causar muchos problemas. Sin embargo, un patrón aplicado correctamente ayudará a resolver el problema de forma fácil y sencilla. Patrones de diseño en Java [Parte 1] - 1Tipos de patrones :
  • generando
  • estructural
  • conductual
Los patrones de creación proporcionan mecanismos de inicialización, lo que le permite crear objetos de una manera conveniente. Los patrones estructurales definen las relaciones entre clases y objetos, permitiéndoles trabajar juntos. Los patrones de comportamiento se utilizan para facilitar las interacciones entre entidades. Generadores :
  • Singleton : limita la creación de una instancia de una clase y proporciona acceso a su único objeto.
  • Fábrica : se utiliza cuando tenemos una superclase con múltiples subclases y, según la entrada, necesitamos devolver una de la subclase.
  • Abstract Factory : use una superfábrica para crear una fábrica y luego use la fábrica creada para crear objetos.
  • Constructor : se utiliza para crear un objeto complejo utilizando objetos simples. Poco a poco va creando un objeto más grande a partir de un objeto pequeño y simple.
  • Prototipo : ayuda a crear un objeto duplicado con mejor rendimiento; en lugar de uno nuevo, se crea un clon devuelto del objeto existente.
Estructural :
  • El adaptador es un convertidor entre dos objetos incompatibles. Usando el patrón del adaptador, podemos combinar dos interfaces incompatibles.
  • Compuesto : utiliza una única clase para representar una estructura de árbol.
  • Proxy : representa la funcionalidad de otra clase.
  • Flyweight : en lugar de crear una gran cantidad de objetos similares, los objetos se reutilizan.
  • Fachada : proporciona una interfaz simple para el cliente y el cliente utiliza la interfaz para interactuar con el sistema.
  • Bridge : hace que las clases concretas sean independientes de las clases de implementación de la interfaz.
  • Decorador : agrega nueva funcionalidad a un objeto existente sin comprometerse con su estructura.
Comportamiento :
  • Método de plantilla : define la base del algoritmo y permite a los sucesores redefinir algunos pasos del algoritmo sin cambiar su estructura en su conjunto.
  • Mediador : proporciona una clase mediadora que maneja todas las comunicaciones entre diferentes clases.
  • Cadena de responsabilidad : le permite evitar una dependencia estricta del remitente de la solicitud de su destinatario, mientras que la solicitud puede ser procesada por varios objetos.
  • Observador : permite que algunos objetos monitoreen y reaccionen ante eventos que ocurren en otros objetos.
  • Estrategia : el algoritmo de estrategia se puede cambiar durante la ejecución del programa.
  • Comando : la interfaz de comando declara un método para realizar una acción específica.
  • Estado : un objeto puede cambiar su comportamiento según su estado.
  • Visitante : se utiliza para simplificar operaciones en agrupaciones de objetos relacionados.
  • Intérprete : define una gramática de lenguaje simple para un dominio problemático.
  • Iterador : accede secuencialmente a los elementos de un objeto de colección sin conocer su representación subyacente.
  • Memento (Keeper): se utiliza para almacenar el estado de un objeto; este estado se puede restaurar más tarde.
Mientras realiza el curso JavaRush, encontrará un par de patrones de esta lista. Recomiendo problemas de patrones: 1522 , 1530 , 1631 , big01 , 2912 , 3107 ... El uso inteligente de patrones de diseño conduce a una mayor confiabilidad en el mantenimiento del código porque, además de ser una buena solución a un problema común, los patrones de diseño pueden ser reconocidos por otros desarrolladores, lo que reduce el tiempo a la hora de trabajar con determinado código. Patrones de diseño en Java [Parte 2]
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION