Red de conocimiento informático - Aprendizaje de programación - Patrón de diseño Java (método de fábrica)

Patrón de diseño Java (método de fábrica)

Programación abstracta (clases o interfaces abstractas).

IWorkFactory StudentWorkFactory = new StudentWorkFactory(); Nota: El tipo es un tipo de interfaz, es decir, una fábrica abstracta, que produce productos abstractos. New es una fábrica concreta, que se implementa mediante subclases. La fábrica produce productos de hormigón. Los beneficios de estar orientado a lo abstracto: 1. Al diseñar abstracciones, no me importa la implementación específica, solo necesito definir la interfaz y saber para qué se utiliza. De esta manera, solo necesito conocer la interfaz abstracta para continuar con el trabajo de desarrollo y diseño posterior, sin diseñar contenido de implementación específico de antemano. 2. Se pueden ampliar varias subclases para implementar la interfaz abstracta, lo que es más propicio para la expansión posterior; del sistema y no tiene ningún impacto en el sistema original, es decir, el principio de apertura y cierre.

Trabajo del profesor TT = nuevo trabajo del profesor(); No hace falta decir que es una programación orientada a clases de implementación específicas. La desventaja es la escasa escalabilidad, lo que tiene un gran impacto en el posterior mantenimiento y expansión del sistema. .

Un ejemplo simple:

Si el objeto de tipo de trabajo del profesor se utiliza en el código A.java del sistema, cumple con los requisitos de software actuales. Sin embargo, ¿qué pasa si un día los requisitos cambian y se necesita un objeto de tipo StudentWork? Sólo el nivel A.java se puede modificar para cumplir con dichos requisitos de modificación. Esto afecta la estabilidad de la estructura original del sistema, requiere una nueva depuración y prueba, genera altos costos de mantenimiento y, en ocasiones, puede causar errores en el sistema, lo que afecta el funcionamiento del sistema.

Si aplica el tipo de interfaz de trabajo en la clase A.java, no habrá tal problema. A.java no requiere ninguna modificación, solo necesita ser modificado e inyectado en un...

El beneficio de la programación abstracta radica en el mantenimiento y expansión del sistema, es decir, agregar nuevas aplicaciones extendidas. comportamientos sin afectar el funcionamiento estable del sistema original, es decir, consistente con el principio "on-off". Como resultado, es posible que se pierdan algunos problemas de eficiencia, pero esto se puede ignorar para los costos de mantenimiento posteriores. Le recomiendo un buen libro: "Consejos de software - Patrones de diseño", que explica los patrones de diseño implementados, así como el diagrama de clases estático de cada patrón y el análisis y explicación específicos del JDK de los patrones de diseño. Debe ser muy gratificante leerlo. ¡Te deseo éxito!