El patrón de fachada, también conocido como modo de apariencia, oculta la complejidad del sistema y proporciona al cliente una interfaz que puede acceder al sistema. Este tipo de patrón de diseño es un patrón estructural. Agrega una interfaz al sistema existente para ocultar la complejidad del sistema y proporciona una interfaz de acceso de alto nivel unificada para un conjunto de interfaces en el subsistema, lo que hace que el subsistema sea más fácil de acceder o usar. Este patrón involucra una clase única que proporciona métodos simplificados para solicitudes de clientes y llamadas delegadas a los métodos de clase de sistema existentes.
En resumen, es encapsular un montón de procesos complejos en una interfaz para que los usuarios lo usen para usar fácilmente. Hay tres roles en este patrón de diseño:
1) Carácter de fachada (fachada): este es el núcleo del modo de fachada. El rol del cliente lo llama, por lo que está familiarizado con la funcionalidad del subsistema. Se reserva internamente varias combinaciones funcionales basadas en las necesidades existentes del rol del cliente.
2) Rol de subsistema (subsistema): implementa las funciones del subsistema. Para ello, el papel de la fachada es tan desconocido como el papel del cliente, y no tiene ninguna información y enlace al rol de la fachada.
3) Rol de cliente: llame al rol de fachada para completar las funciones que se obtendrán.
Aquí hay un simple ejemplo de implementación:
// Definir una entrada de entrada pública unificada Shapemaker {private Shape Circle; private Shape Rectangle; private Shape Square; public Shapemaker () {circle = new Circle (); rectangle = new rectangle (); square = new Square ();} public void drawcircle () {circle.draw ();} pública public drawre {Square.Draw ();}} // Use directamente la clase de apariencia definida previamente para dibujar varias formas. En cuanto a cómo obtener y dibujar, no hay necesidad de prestar atención a la clase pública FacadePatternDemo {public static void main (string [] args) {Shapemaker Shapemaker = new Shapemaker (); Shapemaker.DrawCircle (); Shapemaker.DrawrawrawraCectangle (); Shapemaker.DrawSquare ();}}}}}}}}Figura 1: diagrama UML
class DrawerOne {public void Open () {System.out.println ("Se abre el primer cajón"); getKey ();} public void getKey () {System.out.println ("Obtener la clave para el segundo cajón");}} Clase ClasserTwo {public Void Open () {System.Println ("El cajón del ciclo es abierto "); getFile ();} public void getFile () {System.out.println (" Obtenga este archivo importante ");}} class BrawerFacade {DrawerOne Darwerone = new DrawerOne (); Drawertwo darwertwo = new Drawertwo (); public void Open () {darwerone.open (); darwertwo.open ();}} public class crawercclient {public static void main (string [] args) {shrawerFacade cajón = new DrawerFacade (); Drawer.open ();}}}}Escenario de uso del modo de fachada:
(1) Módulos que proporcionan acceso externo a módulos complejos o subsistemas.
(2) El subsistema es relativamente independiente.
(3) En la estructura jerárquica, la entrada de cada capa en el sistema se puede definir utilizando el patrón de apariencia.
Lo anterior es la explicación detallada del modelo de diseño Java (modo de apariencia) introducido por el editor. ¡Espero que sea útil para todos!