Please enable JavaScript.
Coggle requires JavaScript to display documents.
Patrones de Diseño" - Coggle Diagram
Patrones de Diseño"
Patrones Estructurales
-
Bridge
-
Caracteristicas:
Abstraccion e implementacion independientes.
Facilita extender jerarquias
Reduce combinaciones de clases
Caso: Controles remotos (abstracción) que funcionan con diferentes marcas de televisores (implementación).
-
-
Composite
-
Caracteristicas
Representa estructuras jerárquicas.
Operaciones comunes para todos los nodos.
Recursividad
-
-
-
-
-
Flyweight
-
Características
Separa estado compartido y único.
Reduce uso de RAM.
Muy útil con miles de objetos similares.
-
-
-
Proxy
-
Características
Representa a otro objeto.
Añade lógica extra al acceso.
Puede ser remoto, protector o de caché.
-
-
Cuándo usarlo: Cuando necesitas controlar acceso, cargar objetos pesados o hacer peticiones remotas.
Patrones Creacionales
Factory Method
Proposito: : Delegar la creacion de objetos a subclases para no acolpar el codigo a una clase concreta.
Caracterisiticas: Define un metodo de creacion comun, las subclases deciden que objetos crear, reduce el acoplamiento.
Caso de uso: Crear duferebtes tuois de documentos (pdf, Word) segun el tipo solicitado.
Ventajas:.Flexibilidadad para crear/agregar nuevos productos, evita dependencias directas.
-
Abstract Factory
-
Caracteristicas:
Devuelve conjuntos de objetos compatibles.
Facilita cambiar de "familia" completa.
Encapsula la creacion de productos.
Caso de uso:Cambiar todo el tema visual de una app (botones, menusm ventanas) entre "modo oscuroy "modo claro".
-
-
Builder
-
Caracterisitcas:
Separa construccion de representacion.
Permite variaciones en la creacion
Permite pasos opcionales
Caso de uso: Construir un objeto "computadora" agregando CPU, RAM, GPU, etc.
Ventajas; Reduce la complejidad de constructores, Permite diferentes configuraciones.
-
Prototype
-
Caracteristicas
Util para evitar creacion costosa
Permite copiar estructuras complejas.
Evita depender del constructor.
-
-
-
-
-
Patrones emergentes
-
DAO (Data Access Object)
-
Características
Capa dedicada exclusivamente a operaciones CRUD
Oculta detalles del motor de base de datos
Facilita pruebas y mantenimiento
Caso de uso
Una clase UsuarioDAO que maneja guardar, actualizar y consultar usuarios en MySQL
-
-
-
-
-
-