Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porRosa Carrasco Soler Modificado hace 6 años
1
APLICACIONES II ° Patrones De Diseño ° Esteban Omar Mora Delgado
Jessica Trapaga Vilchis Alma Leticia Rufino Díaz Salvador Rojas Sánchez Profesor: Carlos 4-A Agosto – Enero 2011
2
INDICE Patrones De Diseño Adapter Strategy Bridge sigleton
3
Patrón de diseño 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.
4
Que Es 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 reusable, lo que significa que es aplicable a diferentes problemas de diseño en distintas circunstancias.
5
PATRONES DE DISEÑO Adapter
El patrón Adapter (Adaptador) se utiliza para transformar una interfaz en otra, de tal modo que una clase que no pudiera utilizar la primera, haga uso de ella a través de la segunda.
6
PATRONES DE DISEÑO Adapter
Propósito: Convierte la interfaz de una clase en otra interfaz que el cliente espera. Adapter permite a las clases trabajar juntas, lo que de otra manera no podrían hacerlo debido a sus interfaces incompatibles.
7
PATRONES DE DISEÑO Adapter
Aplicabilidad: usar el patrón Adapter cuando: Se desea usar una clase existente, y su interfaz no se iguala con la necesitada. Cuando se desea crear una clase reusable que coopera con clases no relacionadas, es decir, las clases no tienen necesariamente interfaces compatibles.
8
Estructura Una clase adaptadora usa múltiples herencias para adoptar una interfaz a otra Un objeto adaptador cuenta con la composición de objetos.
9
Adapter Implementación:
Crear una nueva clase que será el Adaptador, que extienda del componente existente e implemente la interfaz obligatoria. De este modo tenemos la funcionalidad que queríamos y cumplimos la condición de implementar la interfaz. La diferencia entre los patrones Adapter y Facade, es que el primero reutiliza una interfaz ya existente, mientras que el segundo define una nueva con el objetivo de simplificarla. Adapter Implementación: Crear una nueva clase que será el Adaptador, que extienda del componente existente e implemente la interfaz obligatoria. De este modo tenemos la funcionalidad que queríamos y cumplimos la condición de implementar la interfaz. La diferencia entre los patrones Adapter y Facade, es que el primero reutiliza una interfaz ya existente, mientras que el segundo define una nueva con el objetivo de simplificarla.
10
PATRONES DE DISEÑO STRATEGY Patrón de comportamiento:
Caracterizan las formas en las que interactúan y reparten responsabilidades las distintas clases u objetos
11
PATRONES DE DISEÑO STRATEGY
Es un patrón de State que no cambia la funcionalidad, sino su comportamiento y propiedades de un objeto. Se puede ver como un cambio parcial del tipo de objeto Encapsula algoritmos relacionados en clases y hacerlos intercambiables. Permite que la selección del algoritmo se haga según el objeto que se trate.
12
STRATEGY VENTAJAS: Se permite cambiar el algoritmo dinámicamente
Se eliminan sentencias condicionales para seleccionar el algoritmo deseado
13
STRATEGY Artículo oferta(int) Strategy EnSubasta ofertas()
nuevaoferta(int) plazo() Subastado precio() comprador()
14
PATRONES DE DISEÑO BRIDGE
El patrón Bridge, también conocido como Handle / Body, es una técnica usada en programación para desacoplar una abstracción de su implementación, de manera que ambas puedan ser modificadas independientemente sin necesidad de alterar por ello la otra.
15
BRIDGE Aplicación: Tanto la abstracción como su implementación deben ser extensibles por subclases. El patrón de diseño bridge deja combinar la implementación y su abstracción y permite extenderlas independientemente. La herencia puede generar una explosión de clases cuando queremos dividir un objetos; bridge evita dicha explosión.
16
BRIDGE Estructura:
17
BRIDGE Comportamiento:
Abstraction: define una interface abstracta. Mantiene una referencia a un objeto de tipo Implementor. RefinedAbstraction: extiende la interface definida por Abstraction ConcreteImplementor: implementa la interface de Implementor y define su implementación concreta.
18
BRIDGE Implementor: define la interface para la implementación de clases. Esta interface no se tiene que corresponder exactamente con la interface de Abstraction.
19
sigleton Cambio el constructor a privado.
Hago que la clase no pueda ser heredada. Agrego una variable estática del mismo tipo de la clase donde esta contenida. (instancia) Agrego un método estático que retorne la variable estática. (GetInstance) No creo el objeto hasta que sea necesario (Lazy Creation) Agrego el código necesario para no crear dos instancias en distintos thread.
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.