Colección de citas famosas - Colección de versos - ¿Cuál es la diferencia entre modelo de fábrica, patrón de método de fábrica y fábrica abstracta?

¿Cuál es la diferencia entre modelo de fábrica, patrón de método de fábrica y fábrica abstracta?

Las diferencias entre el modelo de fábrica, el patrón de método de fábrica y la fábrica abstracta son las siguientes:

1.

Al crear objetos, el "modo de fábrica" ​​no usa nuevo para crear objetos, pero usa el modo de fábrica; el "modo de método de fábrica" ​​crea objetos a través del modo fw; la fábrica abstracta usa el modo de iteración para crear objetos.

2. En segundo lugar, las variables de definición de los tres son diferentes.

El "modo de fábrica" ​​se puede utilizar para configurar variables en cualquier momento sin configurarlas por adelantado. Antes de continuar con el siguiente paso, debe utilizar variables definidas, como parámetros o archivos de configuración, en el patrón del método de fábrica. La "fábrica abstracta" requiere modificar los métodos de clase cada vez que se agrega un producto.

3. Finalmente, el número de interfaces entre ellos es diferente. El "patrón de fábrica" ​​puede usar dos interfaces y tres interfaces, mientras que el "patrón de método de fábrica" ​​solo puede usar una interfaz. Una fábrica abstracta puede utilizar un número ilimitado de interfaces.

Datos extendidos:

Ventajas y desventajas del patrón del método de fábrica

1 Ventaja:

La clase de fábrica contiene la lógica de juicio necesaria y puede decidir Cuando se crea una instancia de la clase de producto, el cliente queda relevado de la responsabilidad de crear el objeto del producto directamente y solo "consume" el producto. De esta manera, el patrón del método de fábrica realiza la división de responsabilidades.

Cuando el producto tiene una estructura jerárquica compleja de varios niveles, la clase de fábrica solo se tiene a sí misma, y ​​es un defecto del modelo permanecer sin cambios en respuesta a los cambios. Debido a que la clase de fábrica centraliza toda la lógica de creación de productos, una vez que no funcione correctamente, todo el sistema se verá afectado.

2. Desventajas:

Es difícil ampliar el sistema. Una vez que se agrega un nuevo producto, será necesario modificar la lógica de fábrica, lo que puede hacer que la lógica de fábrica sea demasiado compleja y viole el principio de "abierto-cerrado" (OCP). Además, el patrón del método de fábrica generalmente utiliza un método de fábrica estático, lo que hace que sea imposible que las subclases lo hereden, lo que da como resultado una función de fábrica que no puede formar una jerarquía basada en la herencia.

Enciclopedia Baidu-Patrón de fábrica

Enciclopedia Baidu-Patrón de método de fábrica

Enciclopedia Baidu-Fábrica abstracta