Facade - Design Pattern - GoF
Click here to load reader
description
Transcript of Facade - Design Pattern - GoF
![Page 1: Facade - Design Pattern - GoF](https://reader038.fdocumento.com/reader038/viewer/2022100603/5595045c1a28abf0208b464e/html5/thumbnails/1.jpg)
Patrones de Diseño - Facade
Provee una interface unificada a un conjunto de interfaces en un subsistema.
Define una interface de alto nivel que hace al subsistema más fácil de usar.
Se usa Facade cuando :
●Se quiere proveer de una simple interface a un subsistema complejo.
●Hay muchas dependencias entre los clientes y las clases del subsistema.
●Se quiere crear una capa sobre el subsistema que defina un punto de entrada
para cada nivel del subsistema.
![Page 2: Facade - Design Pattern - GoF](https://reader038.fdocumento.com/reader038/viewer/2022100603/5595045c1a28abf0208b464e/html5/thumbnails/2.jpg)
Patrones de Diseño - Facade
Estructura :
Participantes :
●Facade :
Sabe a qué clases del susbsistema le corresponde una petición.
Delega las peticiones del cliente a los objetos apropiados del subsistema.
●Subsystem Classes :
Implementan la funcionalidad del sistema
Dirigen el trabajo asignado por el objeto Facade.
No tienen conocimiento del objeto Facade; es decir, no tienen referencias a él.
![Page 3: Facade - Design Pattern - GoF](https://reader038.fdocumento.com/reader038/viewer/2022100603/5595045c1a28abf0208b464e/html5/thumbnails/3.jpg)
Patrones de Diseño - Facade
Consecuencias :
●Separa al cliente de los componentes del subsistema.
●Favorece el bajo acoplamiento entre el subsistema y el cliente.
![Page 4: Facade - Design Pattern - GoF](https://reader038.fdocumento.com/reader038/viewer/2022100603/5595045c1a28abf0208b464e/html5/thumbnails/4.jpg)
Patrones de Diseño - FacadePatrones Relacionados :●El patrón Abstract Factory puede ser usado con Facade para proporcionar una
interface para crear objetos del subsistema en una forma de subistema
independiente.
●El patrón Mediator es similar a Facade, ambos abstraen la funcionaldad de las
clases.
●El propósito de Mediator es abstraer arbitrariamente la comunicación entre los
objetos colegas.
●Los objetos colegas estan enterados de esto y se comunican con el Mediator y no
directamente entre ellos.
●El patrón Facade solamente abstrae la interface a los objetos subsistema para
facilitar su uso.
●Los objetos del subsistema no saben de la existencia del patron Facade, además
éste no define nuevas funcionalidades.
●A menudo los objetos Facade son Singletons, ya que sólo se ocupa uno.