SlideShare una empresa de Scribd logo
Patrones de diseño http://www.javacamp.org/designPattern/
Para quesirven? Los patrones de diseño son la base para la búsqueda de soluciones a problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces. Un patrón de diseño es una solución a un problema de diseño. Para que una solución sea considerada un patrón debe poseer ciertas características. Una de ellas es que debe haber comprobado su efectividad resolviendo problemas similares en ocasiones anteriores. Otra es que debe ser reutilizable, lo que significa que es aplicable a diferentes problemas de diseño en distintas circunstancias.
Tiposde patrones Existen varios tipos de patrones, pero estos son los 3 mas importantes, en el cual se derivan los patrones de diseno. Patrones de Creacion: Abstract Factory. Proporciona una interfaz para crear familias de objetos o que dependen entre sí, sin especificar sus clases concretas. Builder. Separa la construcción de un objeto complejo de su representación, de forma que el mismo proceso de construcción pueda crear diferentes representaciones. Factory Method. Define una interfaz para crear un objeto, pero deja que sean las subclases quienes decidan qué clase instanciar. Permite que una clase delegue en sus subclases la creación de objetos. Prototype. Especifica los tipos de objetos a crear por medio de una instancia prototípica, y crear nuevos objetos copiando este prototipo. Singleton. Garantiza que una clase sólo tenga una instancia, y proporciona un punto de acceso global a ella.
Patrones estructurales: Adapter. Convierte la interfaz de una clase en otra distinta que es la que esperan los clientes. Permiten que cooperen clases que de otra manera no podrían por tener interfaces incompatibles. Bridge. Desvincula una abstracción de su implementación, de manera que ambas puedan variar de forma independiente. Composite. Combina objetos en estructuras de árbol para representar jerarquías de parte-todo. Permite que los clientes traten de manera uniforme a los objetos individuales y a los compuestos. Decorator. Añade dinámicamente nuevas responsabilidades a un objeto, proporcionando una alternativa flexible a la herencia para extender la funcionalidad. Facade. Proporciona una interfaz unificada para un conjunto de interfaces de un subsistema. Define una interfaz de alto nivel que hace que el subsistema se más fácil de usar. Flyweight. Usa el compartimiento para permitir un gran número de objetos de grano fino de forma eficiente. Proxy. Proporciona un sustituto o representante de otro objeto para controlar el acceso a éste.
Patrones de comportamiento Chainof Responsibility. Evita acoplar el emisor de una petición a su receptor, al dar a más de un objeto la posibilidad de responder a la petición. Crea una cadena con los objetos receptores y pasa la petición a través de la cadena hasta que esta sea tratada por algún objeto. Command. Encapsula una petición en un objeto, permitiendo así parametrizar a los clientes con distintas peticiones, encolar o llevar un registro de las peticiones y poder deshacer la operaciones. Interpreter. Dado un lenguaje, define una representación de su gramática junto con un intérprete que usa dicha representación para interpretar las sentencias del lenguaje. Iterator. Proporciona un modo de acceder secuencialmente a los elementos de un objeto agregado sin exponer su representación interna.
Singleton Singleton es un patron de diseño se encarga de que solo unainstancia de clase sea creada, esto da un punto de acceso global al objeto y permiteinstancias multiples sin afectar la clase de clientes con el singleton. Para asegurarque solo unainstanciaescreadacreamosPatronSingletoncomo static. El metodogetInstance() devuelveuna sola instancia de clase. Unarazonpor la que se puedeusareste patron de diseño es en la clase de Ingresar, en este caso Singleton se puede usar en ves de una sola instancia en la clase, por que en el momento de ingresar , ya que esta clase suele usarse muchas veces en cualquier proyecto.  El hecho de ingresar, es un caso aceptable en el Singleton por que no afecta la ejecucion del codigo, ya que si quitas este tipo de clase no afecta tu propio codigo.
Codigo
Respuesta
Builder Este patron de disenose enfoca en construir un objeto complejo paso por paso, o bien parte por parte. Lo que difiere del patronAbstract Factory se enfatiza en una familia de objetos ya sea simple o compleja. Builder devuelve el producto como paso final, y Abstract Factory devuelve el producto inmediatamente.
Codigo
Iterator Define una interfaz que declara los métodos necesarios para acceder secuencialmente a un grupo de objetos de una colección. Algunos de los métodos que podemos definir en la interfaz Iterador son: Primero(), Siguiente(), HayMas() y ElementoActual()Este patrón de diseño permite recorrer una estructura de datos sin que sea necesario conocer la estructura interna de la misma. El patrón Iterador es un mecanismo de acceso a los elementos que constituyen una estructura de datos para la utilización de estos sin exponer su estructura interna.
Codigo
Decorator El patrondecorator responde a la necesidad de añadir dinámicamente funcionalidad a un Objeto. Esto nos permite no tener que crear sucesivas clases que hereden de la primera incorporando la nueva funcionalidad, sino otras que la implementan y se asocian a la primera. Supongamos que tenemos una clase existente Ventana y queremos añadirle funcionalidad para que muestre un borde alrededor. Podemos crear una subclase VentanaConBorde que herede de Ventana. Hasta aquí todo bien, pero supongamos que surge la necesidad de crear una ventana que muestre un pequeño botón de ayuda con un signo de interrogación (?) en su parte superior. Entonces tenemos las siguientes opciones: Crear otra subclase de Ventana: VentanaConBotónDeAyuda. Problema: No cubre la necesidad de tener ventanas con bordes y botón de ayuda a la vez. Crear una subclase de VentanaConBorde: VentanaConBordeYBotonDeAyuda. Problema: No tenemos una ventana con botón de ayuda y sin borde. Crear clases para todas las combinaciones posibles de funcionalidades.
Patrones
Patrones

Más contenido relacionado

La actualidad más candente

Patrones de diseño - Henry Vallejo
Patrones de diseño - Henry VallejoPatrones de diseño - Henry Vallejo
Patrones de diseño - Henry Vallejo
2008PA2Info3
 
Abstract Factory
Abstract FactoryAbstract Factory
Abstract Factory
Diego Calderon
 
Implementación y adaptación de patrones de diseño
Implementación y adaptación de patrones de diseñoImplementación y adaptación de patrones de diseño
Implementación y adaptación de patrones de diseño
Ju Pe
 
Patrones de diseño de software
Patrones de diseño de softwarePatrones de diseño de software
Patrones de diseño de software
Esteban Espinel
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
Kelly Cuervo
 
Patrones de creación
Patrones de creaciónPatrones de creación
Patrones de creación
Autentia
 
Uso de-patrones-de-arquitectura-capitulo-4
Uso de-patrones-de-arquitectura-capitulo-4Uso de-patrones-de-arquitectura-capitulo-4
Uso de-patrones-de-arquitectura-capitulo-4
Ozzy Bull
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
aleja0940
 
Patrones GOF
Patrones GOFPatrones GOF
Buider Patron de Diseño
Buider Patron de DiseñoBuider Patron de Diseño
Buider Patron de Diseño
Mario Cabrera
 
Porafolio unidad 1
Porafolio unidad 1Porafolio unidad 1
Porafolio unidad 1
bchrmz
 
Patrones de diseño - Daniel E. Jaramillo
Patrones de diseño - Daniel E. JaramilloPatrones de diseño - Daniel E. Jaramillo
Patrones de diseño - Daniel E. Jaramillo
2008PA2Info3
 
Patrones de diseño y frameworks
Patrones de diseño y frameworksPatrones de diseño y frameworks
Patrones de diseño y frameworks
Daniel Cam Urquizo
 
Patrones comportamiento
Patrones comportamientoPatrones comportamiento
Patrones comportamiento
Juan Camilo
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
David Vidal
 
Taller patrones de diseño
Taller patrones de  diseñoTaller patrones de  diseño
Taller patrones de diseño
tovar1982
 
Patron fachada...
Patron fachada...Patron fachada...
Patron fachada...
Ana Arroyave
 
Abstract factory
Abstract factoryAbstract factory
Abstract factory
New Break Crew
 
Abstract Factory
Abstract FactoryAbstract Factory
Abstract Factory
Juan Lizaldes
 
Patrones de-diseño-mañana
Patrones de-diseño-mañanaPatrones de-diseño-mañana
Patrones de-diseño-mañana
ale abad aguilar
 

La actualidad más candente (20)

Patrones de diseño - Henry Vallejo
Patrones de diseño - Henry VallejoPatrones de diseño - Henry Vallejo
Patrones de diseño - Henry Vallejo
 
Abstract Factory
Abstract FactoryAbstract Factory
Abstract Factory
 
Implementación y adaptación de patrones de diseño
Implementación y adaptación de patrones de diseñoImplementación y adaptación de patrones de diseño
Implementación y adaptación de patrones de diseño
 
Patrones de diseño de software
Patrones de diseño de softwarePatrones de diseño de software
Patrones de diseño de software
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
Patrones de creación
Patrones de creaciónPatrones de creación
Patrones de creación
 
Uso de-patrones-de-arquitectura-capitulo-4
Uso de-patrones-de-arquitectura-capitulo-4Uso de-patrones-de-arquitectura-capitulo-4
Uso de-patrones-de-arquitectura-capitulo-4
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
Patrones GOF
Patrones GOFPatrones GOF
Patrones GOF
 
Buider Patron de Diseño
Buider Patron de DiseñoBuider Patron de Diseño
Buider Patron de Diseño
 
Porafolio unidad 1
Porafolio unidad 1Porafolio unidad 1
Porafolio unidad 1
 
Patrones de diseño - Daniel E. Jaramillo
Patrones de diseño - Daniel E. JaramilloPatrones de diseño - Daniel E. Jaramillo
Patrones de diseño - Daniel E. Jaramillo
 
Patrones de diseño y frameworks
Patrones de diseño y frameworksPatrones de diseño y frameworks
Patrones de diseño y frameworks
 
Patrones comportamiento
Patrones comportamientoPatrones comportamiento
Patrones comportamiento
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Taller patrones de diseño
Taller patrones de  diseñoTaller patrones de  diseño
Taller patrones de diseño
 
Patron fachada...
Patron fachada...Patron fachada...
Patron fachada...
 
Abstract factory
Abstract factoryAbstract factory
Abstract factory
 
Abstract Factory
Abstract FactoryAbstract Factory
Abstract Factory
 
Patrones de-diseño-mañana
Patrones de-diseño-mañanaPatrones de-diseño-mañana
Patrones de-diseño-mañana
 

Destacado

Presentación1
Presentación1Presentación1
Presentación1
htinajero
 
Especificación técnica Perfecta
Especificación técnica PerfectaEspecificación técnica Perfecta
Especificación técnica Perfecta
htinajero
 
Especificación técnica
Especificación técnicaEspecificación técnica
Especificación técnica
htinajero
 
Presentacion diagramas uml
Presentacion diagramas umlPresentacion diagramas uml
Presentacion diagramas uml
htinajero
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016
Andrew Chen
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
Barry Feldman
 

Destacado (6)

Presentación1
Presentación1Presentación1
Presentación1
 
Especificación técnica Perfecta
Especificación técnica PerfectaEspecificación técnica Perfecta
Especificación técnica Perfecta
 
Especificación técnica
Especificación técnicaEspecificación técnica
Especificación técnica
 
Presentacion diagramas uml
Presentacion diagramas umlPresentacion diagramas uml
Presentacion diagramas uml
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
 

Similar a Patrones

Patron de diseño
Patron de diseñoPatron de diseño
Patron de diseño
Luis Gutierrez
 
Patrones de diseño - Andrés Dorado
Patrones de diseño - Andrés DoradoPatrones de diseño - Andrés Dorado
Patrones de diseño - Andrés Dorado
2008PA2Info3
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
Astrid Bermudez
 
INFOGRAFIA.pdf
INFOGRAFIA.pdfINFOGRAFIA.pdf
INFOGRAFIA.pdf
FranciscoZurisaddaiM
 
Transparencias_Patrones.ppt
Transparencias_Patrones.pptTransparencias_Patrones.ppt
Transparencias_Patrones.ppt
BenaventeSolorzanoCa
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
Thalia Regalado Juape
 
Patronesdediseo 160927143256 (1)
Patronesdediseo 160927143256 (1)Patronesdediseo 160927143256 (1)
Patronesdediseo 160927143256 (1)
ale abad aguilar
 
Abstract factory. presentación
Abstract factory. presentaciónAbstract factory. presentación
Abstract factory. presentación
avidal020
 
Diseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetosDiseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetos
Josue Sarabia
 
Monografia patrones de diseño proxy (3.0)
Monografia   patrones de diseño proxy (3.0)Monografia   patrones de diseño proxy (3.0)
Monografia patrones de diseño proxy (3.0)
finger10
 
manual de C#
manual de C#manual de C#
manual de C#
Brendita Martinez
 
Manual c# 2
Manual c# 2Manual c# 2
Manual c# 2
Elizabeth Reyna
 
Manual de c#
Manual de c#Manual de c#
Manual de c#
Ana Ruth G H
 
Patrones De DiseñO
Patrones De DiseñOPatrones De DiseñO
Patrones De DiseñO
gueste39de6
 
Msdn Webcast InyeccióN De Dependencias Con Spring Framework
Msdn Webcast   InyeccióN De Dependencias Con Spring FrameworkMsdn Webcast   InyeccióN De Dependencias Con Spring Framework
Msdn Webcast InyeccióN De Dependencias Con Spring Framework
Gabriel Oliva
 
Tarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdfTarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdf
BrimmerRamrez
 
Apendice general 4
Apendice general 4Apendice general 4
Apendice general 4
Alfredo Paul Gonzales Ayasta
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
Juanes Alzt
 
Desarrollo basado en patrones
Desarrollo basado en patronesDesarrollo basado en patrones
Desarrollo basado en patrones
Marvin Zumbado
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
Karen Olan
 

Similar a Patrones (20)

Patron de diseño
Patron de diseñoPatron de diseño
Patron de diseño
 
Patrones de diseño - Andrés Dorado
Patrones de diseño - Andrés DoradoPatrones de diseño - Andrés Dorado
Patrones de diseño - Andrés Dorado
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
INFOGRAFIA.pdf
INFOGRAFIA.pdfINFOGRAFIA.pdf
INFOGRAFIA.pdf
 
Transparencias_Patrones.ppt
Transparencias_Patrones.pptTransparencias_Patrones.ppt
Transparencias_Patrones.ppt
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Patronesdediseo 160927143256 (1)
Patronesdediseo 160927143256 (1)Patronesdediseo 160927143256 (1)
Patronesdediseo 160927143256 (1)
 
Abstract factory. presentación
Abstract factory. presentaciónAbstract factory. presentación
Abstract factory. presentación
 
Diseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetosDiseña y construye programas orientados a objetos
Diseña y construye programas orientados a objetos
 
Monografia patrones de diseño proxy (3.0)
Monografia   patrones de diseño proxy (3.0)Monografia   patrones de diseño proxy (3.0)
Monografia patrones de diseño proxy (3.0)
 
manual de C#
manual de C#manual de C#
manual de C#
 
Manual c# 2
Manual c# 2Manual c# 2
Manual c# 2
 
Manual de c#
Manual de c#Manual de c#
Manual de c#
 
Patrones De DiseñO
Patrones De DiseñOPatrones De DiseñO
Patrones De DiseñO
 
Msdn Webcast InyeccióN De Dependencias Con Spring Framework
Msdn Webcast   InyeccióN De Dependencias Con Spring FrameworkMsdn Webcast   InyeccióN De Dependencias Con Spring Framework
Msdn Webcast InyeccióN De Dependencias Con Spring Framework
 
Tarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdfTarea_Investigacion programacion .pdf
Tarea_Investigacion programacion .pdf
 
Apendice general 4
Apendice general 4Apendice general 4
Apendice general 4
 
Patrones de diseño
Patrones de diseñoPatrones de diseño
Patrones de diseño
 
Desarrollo basado en patrones
Desarrollo basado en patronesDesarrollo basado en patrones
Desarrollo basado en patrones
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
 

Último

Tema 20 Cuentas Por Cobrar Finanzas I UNSA
Tema 20 Cuentas Por Cobrar Finanzas I UNSATema 20 Cuentas Por Cobrar Finanzas I UNSA
Tema 20 Cuentas Por Cobrar Finanzas I UNSA
GABRIELAALEXANDRASAI1
 
Actividad Sumativa #2 Realizado por Luis Leal..pptx
Actividad Sumativa #2 Realizado por Luis Leal..pptxActividad Sumativa #2 Realizado por Luis Leal..pptx
Actividad Sumativa #2 Realizado por Luis Leal..pptx
luis95466
 
ANÁLISIS FINANCIERO DE LA EMPRESA GLORIA.pptx
ANÁLISIS FINANCIERO DE LA EMPRESA GLORIA.pptxANÁLISIS FINANCIERO DE LA EMPRESA GLORIA.pptx
ANÁLISIS FINANCIERO DE LA EMPRESA GLORIA.pptx
PalJosuTiznadoCanaza
 
cafetales encalado y producción usos y costumbres
cafetales encalado y producción usos y costumbrescafetales encalado y producción usos y costumbres
cafetales encalado y producción usos y costumbres
DavidFloresJara
 
NIF C-1 Efectivo y equivalentes de efectivo.pptx
NIF C-1 Efectivo y equivalentes de efectivo.pptxNIF C-1 Efectivo y equivalentes de efectivo.pptx
NIF C-1 Efectivo y equivalentes de efectivo.pptx
sashadelynch27
 
INVESTIGACION FORMATIVA GESTIÓN DE TALENTO HUMANO
INVESTIGACION FORMATIVA GESTIÓN DE TALENTO HUMANOINVESTIGACION FORMATIVA GESTIÓN DE TALENTO HUMANO
INVESTIGACION FORMATIVA GESTIÓN DE TALENTO HUMANO
jennicaceres
 
DIRECTORIO órgano de control institucional - ABRIL 2024.pdf
DIRECTORIO órgano de control institucional - ABRIL 2024.pdfDIRECTORIO órgano de control institucional - ABRIL 2024.pdf
DIRECTORIO órgano de control institucional - ABRIL 2024.pdf
peruvip2
 
Calculo de amortización de un prestamo.pdf
Calculo de amortización de un prestamo.pdfCalculo de amortización de un prestamo.pdf
Calculo de amortización de un prestamo.pdf
LEIDYRIOFRIO
 
Normas de Seguridad Vial ISO 39001-2012.pdf
Normas de Seguridad Vial ISO 39001-2012.pdfNormas de Seguridad Vial ISO 39001-2012.pdf
Normas de Seguridad Vial ISO 39001-2012.pdf
henrywz8831
 
Los catorce principios de calidad en las empresas, según Deming..pptx
Los catorce  principios de calidad en las empresas, según Deming..pptxLos catorce  principios de calidad en las empresas, según Deming..pptx
Los catorce principios de calidad en las empresas, según Deming..pptx
AbelQuispe31
 
Guia de emprendimientos para los alumnos
Guia de emprendimientos para los alumnosGuia de emprendimientos para los alumnos
Guia de emprendimientos para los alumnos
cantutecperu
 
capítulo 3 y 4 de finazas internacionales
capítulo 3 y 4  de finazas internacionalescapítulo 3 y 4  de finazas internacionales
capítulo 3 y 4 de finazas internacionales
josehernandez790860
 
El-Codigo-De-La-Abundancia para todos.pdf
El-Codigo-De-La-Abundancia para todos.pdfEl-Codigo-De-La-Abundancia para todos.pdf
El-Codigo-De-La-Abundancia para todos.pdf
AshliMack
 
La psicología del dinero, aprende a mejorar tu relacion con el dinero
La psicología del dinero, aprende a mejorar tu relacion con el dineroLa psicología del dinero, aprende a mejorar tu relacion con el dinero
La psicología del dinero, aprende a mejorar tu relacion con el dinero
CecilyJaimesBermudez
 
Trabajo sobre Presupuesto Empresarial .pdf
Trabajo sobre Presupuesto Empresarial .pdfTrabajo sobre Presupuesto Empresarial .pdf
Trabajo sobre Presupuesto Empresarial .pdf
YennyGarcia45
 
Clase 6.- Comercio Internacional y Acuerdos Comerciales.pptx
Clase 6.- Comercio Internacional y Acuerdos Comerciales.pptxClase 6.- Comercio Internacional y Acuerdos Comerciales.pptx
Clase 6.- Comercio Internacional y Acuerdos Comerciales.pptx
kimLore2
 
ORGANIZACIÓN EMPRESARIAL..............pptx
ORGANIZACIÓN EMPRESARIAL..............pptxORGANIZACIÓN EMPRESARIAL..............pptx
ORGANIZACIÓN EMPRESARIAL..............pptx
NoeliaLupacaInquilla1
 
Lo nuevo NOI 11 haz ese momento historico
Lo nuevo NOI 11 haz ese momento historicoLo nuevo NOI 11 haz ese momento historico
Lo nuevo NOI 11 haz ese momento historico
Cade Soluciones
 
Sesión 1-2 Formulación de Estados Financieros (2).pdf
Sesión 1-2 Formulación de Estados Financieros (2).pdfSesión 1-2 Formulación de Estados Financieros (2).pdf
Sesión 1-2 Formulación de Estados Financieros (2).pdf
JhoanaSilvaHeredia
 
Documentos comerciales, documento comercial
Documentos comerciales, documento comercialDocumentos comerciales, documento comercial
Documentos comerciales, documento comercial
JaimeMorra
 

Último (20)

Tema 20 Cuentas Por Cobrar Finanzas I UNSA
Tema 20 Cuentas Por Cobrar Finanzas I UNSATema 20 Cuentas Por Cobrar Finanzas I UNSA
Tema 20 Cuentas Por Cobrar Finanzas I UNSA
 
Actividad Sumativa #2 Realizado por Luis Leal..pptx
Actividad Sumativa #2 Realizado por Luis Leal..pptxActividad Sumativa #2 Realizado por Luis Leal..pptx
Actividad Sumativa #2 Realizado por Luis Leal..pptx
 
ANÁLISIS FINANCIERO DE LA EMPRESA GLORIA.pptx
ANÁLISIS FINANCIERO DE LA EMPRESA GLORIA.pptxANÁLISIS FINANCIERO DE LA EMPRESA GLORIA.pptx
ANÁLISIS FINANCIERO DE LA EMPRESA GLORIA.pptx
 
cafetales encalado y producción usos y costumbres
cafetales encalado y producción usos y costumbrescafetales encalado y producción usos y costumbres
cafetales encalado y producción usos y costumbres
 
NIF C-1 Efectivo y equivalentes de efectivo.pptx
NIF C-1 Efectivo y equivalentes de efectivo.pptxNIF C-1 Efectivo y equivalentes de efectivo.pptx
NIF C-1 Efectivo y equivalentes de efectivo.pptx
 
INVESTIGACION FORMATIVA GESTIÓN DE TALENTO HUMANO
INVESTIGACION FORMATIVA GESTIÓN DE TALENTO HUMANOINVESTIGACION FORMATIVA GESTIÓN DE TALENTO HUMANO
INVESTIGACION FORMATIVA GESTIÓN DE TALENTO HUMANO
 
DIRECTORIO órgano de control institucional - ABRIL 2024.pdf
DIRECTORIO órgano de control institucional - ABRIL 2024.pdfDIRECTORIO órgano de control institucional - ABRIL 2024.pdf
DIRECTORIO órgano de control institucional - ABRIL 2024.pdf
 
Calculo de amortización de un prestamo.pdf
Calculo de amortización de un prestamo.pdfCalculo de amortización de un prestamo.pdf
Calculo de amortización de un prestamo.pdf
 
Normas de Seguridad Vial ISO 39001-2012.pdf
Normas de Seguridad Vial ISO 39001-2012.pdfNormas de Seguridad Vial ISO 39001-2012.pdf
Normas de Seguridad Vial ISO 39001-2012.pdf
 
Los catorce principios de calidad en las empresas, según Deming..pptx
Los catorce  principios de calidad en las empresas, según Deming..pptxLos catorce  principios de calidad en las empresas, según Deming..pptx
Los catorce principios de calidad en las empresas, según Deming..pptx
 
Guia de emprendimientos para los alumnos
Guia de emprendimientos para los alumnosGuia de emprendimientos para los alumnos
Guia de emprendimientos para los alumnos
 
capítulo 3 y 4 de finazas internacionales
capítulo 3 y 4  de finazas internacionalescapítulo 3 y 4  de finazas internacionales
capítulo 3 y 4 de finazas internacionales
 
El-Codigo-De-La-Abundancia para todos.pdf
El-Codigo-De-La-Abundancia para todos.pdfEl-Codigo-De-La-Abundancia para todos.pdf
El-Codigo-De-La-Abundancia para todos.pdf
 
La psicología del dinero, aprende a mejorar tu relacion con el dinero
La psicología del dinero, aprende a mejorar tu relacion con el dineroLa psicología del dinero, aprende a mejorar tu relacion con el dinero
La psicología del dinero, aprende a mejorar tu relacion con el dinero
 
Trabajo sobre Presupuesto Empresarial .pdf
Trabajo sobre Presupuesto Empresarial .pdfTrabajo sobre Presupuesto Empresarial .pdf
Trabajo sobre Presupuesto Empresarial .pdf
 
Clase 6.- Comercio Internacional y Acuerdos Comerciales.pptx
Clase 6.- Comercio Internacional y Acuerdos Comerciales.pptxClase 6.- Comercio Internacional y Acuerdos Comerciales.pptx
Clase 6.- Comercio Internacional y Acuerdos Comerciales.pptx
 
ORGANIZACIÓN EMPRESARIAL..............pptx
ORGANIZACIÓN EMPRESARIAL..............pptxORGANIZACIÓN EMPRESARIAL..............pptx
ORGANIZACIÓN EMPRESARIAL..............pptx
 
Lo nuevo NOI 11 haz ese momento historico
Lo nuevo NOI 11 haz ese momento historicoLo nuevo NOI 11 haz ese momento historico
Lo nuevo NOI 11 haz ese momento historico
 
Sesión 1-2 Formulación de Estados Financieros (2).pdf
Sesión 1-2 Formulación de Estados Financieros (2).pdfSesión 1-2 Formulación de Estados Financieros (2).pdf
Sesión 1-2 Formulación de Estados Financieros (2).pdf
 
Documentos comerciales, documento comercial
Documentos comerciales, documento comercialDocumentos comerciales, documento comercial
Documentos comerciales, documento comercial
 

Patrones

  • 1. Patrones de diseño http://www.javacamp.org/designPattern/
  • 2. Para quesirven? Los patrones de diseño son la base para la búsqueda de soluciones a problemas comunes en el desarrollo de software y otros ámbitos referentes al diseño de interacción o interfaces. Un patrón de diseño es una solución a un problema de diseño. Para que una solución sea considerada un patrón debe poseer ciertas características. Una de ellas es que debe haber comprobado su efectividad resolviendo problemas similares en ocasiones anteriores. Otra es que debe ser reutilizable, lo que significa que es aplicable a diferentes problemas de diseño en distintas circunstancias.
  • 3. Tiposde patrones Existen varios tipos de patrones, pero estos son los 3 mas importantes, en el cual se derivan los patrones de diseno. Patrones de Creacion: Abstract Factory. Proporciona una interfaz para crear familias de objetos o que dependen entre sí, sin especificar sus clases concretas. Builder. Separa la construcción de un objeto complejo de su representación, de forma que el mismo proceso de construcción pueda crear diferentes representaciones. Factory Method. Define una interfaz para crear un objeto, pero deja que sean las subclases quienes decidan qué clase instanciar. Permite que una clase delegue en sus subclases la creación de objetos. Prototype. Especifica los tipos de objetos a crear por medio de una instancia prototípica, y crear nuevos objetos copiando este prototipo. Singleton. Garantiza que una clase sólo tenga una instancia, y proporciona un punto de acceso global a ella.
  • 4. Patrones estructurales: Adapter. Convierte la interfaz de una clase en otra distinta que es la que esperan los clientes. Permiten que cooperen clases que de otra manera no podrían por tener interfaces incompatibles. Bridge. Desvincula una abstracción de su implementación, de manera que ambas puedan variar de forma independiente. Composite. Combina objetos en estructuras de árbol para representar jerarquías de parte-todo. Permite que los clientes traten de manera uniforme a los objetos individuales y a los compuestos. Decorator. Añade dinámicamente nuevas responsabilidades a un objeto, proporcionando una alternativa flexible a la herencia para extender la funcionalidad. Facade. Proporciona una interfaz unificada para un conjunto de interfaces de un subsistema. Define una interfaz de alto nivel que hace que el subsistema se más fácil de usar. Flyweight. Usa el compartimiento para permitir un gran número de objetos de grano fino de forma eficiente. Proxy. Proporciona un sustituto o representante de otro objeto para controlar el acceso a éste.
  • 5. Patrones de comportamiento Chainof Responsibility. Evita acoplar el emisor de una petición a su receptor, al dar a más de un objeto la posibilidad de responder a la petición. Crea una cadena con los objetos receptores y pasa la petición a través de la cadena hasta que esta sea tratada por algún objeto. Command. Encapsula una petición en un objeto, permitiendo así parametrizar a los clientes con distintas peticiones, encolar o llevar un registro de las peticiones y poder deshacer la operaciones. Interpreter. Dado un lenguaje, define una representación de su gramática junto con un intérprete que usa dicha representación para interpretar las sentencias del lenguaje. Iterator. Proporciona un modo de acceder secuencialmente a los elementos de un objeto agregado sin exponer su representación interna.
  • 6. Singleton Singleton es un patron de diseño se encarga de que solo unainstancia de clase sea creada, esto da un punto de acceso global al objeto y permiteinstancias multiples sin afectar la clase de clientes con el singleton. Para asegurarque solo unainstanciaescreadacreamosPatronSingletoncomo static. El metodogetInstance() devuelveuna sola instancia de clase. Unarazonpor la que se puedeusareste patron de diseño es en la clase de Ingresar, en este caso Singleton se puede usar en ves de una sola instancia en la clase, por que en el momento de ingresar , ya que esta clase suele usarse muchas veces en cualquier proyecto. El hecho de ingresar, es un caso aceptable en el Singleton por que no afecta la ejecucion del codigo, ya que si quitas este tipo de clase no afecta tu propio codigo.
  • 9. Builder Este patron de disenose enfoca en construir un objeto complejo paso por paso, o bien parte por parte. Lo que difiere del patronAbstract Factory se enfatiza en una familia de objetos ya sea simple o compleja. Builder devuelve el producto como paso final, y Abstract Factory devuelve el producto inmediatamente.
  • 11.
  • 12.
  • 13. Iterator Define una interfaz que declara los métodos necesarios para acceder secuencialmente a un grupo de objetos de una colección. Algunos de los métodos que podemos definir en la interfaz Iterador son: Primero(), Siguiente(), HayMas() y ElementoActual()Este patrón de diseño permite recorrer una estructura de datos sin que sea necesario conocer la estructura interna de la misma. El patrón Iterador es un mecanismo de acceso a los elementos que constituyen una estructura de datos para la utilización de estos sin exponer su estructura interna.
  • 15.
  • 16. Decorator El patrondecorator responde a la necesidad de añadir dinámicamente funcionalidad a un Objeto. Esto nos permite no tener que crear sucesivas clases que hereden de la primera incorporando la nueva funcionalidad, sino otras que la implementan y se asocian a la primera. Supongamos que tenemos una clase existente Ventana y queremos añadirle funcionalidad para que muestre un borde alrededor. Podemos crear una subclase VentanaConBorde que herede de Ventana. Hasta aquí todo bien, pero supongamos que surge la necesidad de crear una ventana que muestre un pequeño botón de ayuda con un signo de interrogación (?) en su parte superior. Entonces tenemos las siguientes opciones: Crear otra subclase de Ventana: VentanaConBotónDeAyuda. Problema: No cubre la necesidad de tener ventanas con bordes y botón de ayuda a la vez. Crear una subclase de VentanaConBorde: VentanaConBordeYBotonDeAyuda. Problema: No tenemos una ventana con botón de ayuda y sin borde. Crear clases para todas las combinaciones posibles de funcionalidades.