Los patrones de diseño son solución bien probada para resolver el problema / tarea específica.
Ahora, surgirá una pregunta en su mente, ¿qué tipo de problema específico? Déjame explicarte tomando un ejemplo.
Problema dado:
Suponga que desea crear una clase para la que solo se debe crear una instancia (u objeto) y que todas las demás clases pueden usar ese objeto.
Solución:
Patrón de diseño singleton es la mejor solución del problema específico anterior. Entonces, cada patrón de diseño tiene alguna especificación o conjunto de reglas para resolver los problemas. Cuáles son esas especificaciones, verá más adelante en los tipos de patrones de diseño.
Pero recuerde una cosa, los patrones de diseño son estrategias independientes del lenguaje de programación para resolver los problemas comunes de diseño orientado a objetos. Eso significa que un patrón de diseño representa una idea, no una implementación particular.
Al utilizar los patrones de diseño, puede hacer que su código sea más flexible, reutilizable y fácil de mantener. Es la parte más importante porque Java sigue internamente los patrones de diseño.
Para convertirse en un desarrollador de software profesional, debe conocer al menos algunas soluciones populares (es decir, patrones de diseño) para los problemas de codificación.
Ventaja del patrón de diseño:
- Son reutilizables en múltiples proyectos.
- Proporcionan las soluciones que ayudan a definir la arquitectura del sistema.
- Capturan las experiencias de ingeniería de software.
- Proporcionan transparencia al diseño de una aplicación.
- Son soluciones comprobadas y comprobadas, ya que se han basado en el conocimiento y la experiencia de desarrolladores de software expertos.
- Los patrones de diseño no garantizan una solución absoluta a un problema. Proporcionan claridad a la arquitectura del sistema y la posibilidad de construir un sistema mejor.
¿Cuándo debemos utilizar los patrones de diseño?
Debemos usar los patrones de diseño. durante la fase de análisis y requisitos de SDLC(Ciclo de vida del desarrollo de programas).
Los patrones de diseño facilitan la fase de análisis y requisitos de SDLC al proporcionar información basada en experiencias prácticas anteriores.
Categorización de patrones de diseño:
Básicamente, los patrones de diseño se clasifican en dos partes:
- Patrones de diseño de Core Java (o JSE).
- Patrones de diseño JEE.
Patrones básicos de diseño de Java
En core java, hay principalmente tres tipos de patrones de diseño, que se dividen a su vez en sus subpartes:
1.Patrón de diseño creativo
- Patrón de fábrica
- Patrón abstracto de fábrica
- Patrón Singleton
- Patrón de prototipo
- Patrón de constructor.
2. Patrón de diseño estructural
- Patrón de adaptador
- Patrón de puente
- Patrón compuesto
- Patrón de decorador
- Patrón de fachada
- Patrón de peso mosca
- Patrón de proxy
3. Patrón de diseño conductual
- Patrón de cadena de responsabilidad
- Patrón de comando
- Patrón de intérprete
- Patrón de iterador
- Patrón de mediador
- Patrón de recuerdo
- Patrón de observador
- Patrón de estado
- Patrón de estrategia
- Patrón de plantilla
- Patrón de visitante
Índice de patrones de diseño
Tutorial de patrones de diseño
1) Patrón de creación