A las notas de diseño de patrones

El propósito de los patrones de diseño

La escritura de procesos de software, los programadores se enfrentan a partir de acoplamiento, cohesión y capacidad de mantenimiento, escalabilidad, re-
uso, flexibilidad, y muchos otros retos, el patrón de diseño es permitir que un programa (software), mejor

  1. La reutilización de código (es decir: el mismo código de función, no escribir muchas veces)
  2. Legibilidad (es decir: la programación de la especificación, la facilidad de lectura y comprensión de otros programadores)
  3. Escalabilidad (es decir: cuando se necesita para añadir nuevas características, muy conveniente, a que se refiere como el mantenimiento)
  4. Fiabilidad (es decir: cuando añadimos nuevas características, ningún efecto sobre la función original)
  5. Para que el programa exhibe alta cohesión , bajo acoplamiento características

Siete principios de patrones de diseño

Los patrones de diseño utilizados comúnmente siete principios son:

  1. Principio de Responsabilidad Individual
  2. Interfaz Segregación Principio
  3. Invocar el principio inverso (al revés)
  4. principio de sustitución de Richter
  5. Abierto Cerrado Principio
  6. Demeter
  7. Síntesis de los principios de multiplexación

Principio de Responsabilidad Individual

Introducción básica
para las clases, que una clase sólo debe ser responsable de un deber. Tales como la clase A cargo de dos responsabilidades diferentes: Responsabilidades, responsabilidades 2. Cuando los cambios de la demanda y los cambios en los derechos de 1 A, pueden resultar en deberes de 2 error de ejecución, tiene que ser dividido en clases de tamaño A, A1, A2.

Por ejemplo: una mesa de operaciones Dao usuario, y luego la mesa para la operación, por lo que una sola violación de los principios de responsabilidad, por lo que tener esto en UserDAO Dao y orderDao

consideraciones y detalles principio de responsabilidad individuales

  1. Reducir la complejidad de la clase, una clase sólo es responsable de un deber.
  2. Clase mejorar la legibilidad, mantenibilidad
  3. Reducir el riesgo causado por los cambios
  4. En circunstancias normales, hay que respetar el principio de responsabilidad única, única lógica es bastante simple, puede violar el principio de la responsabilidad en un solo nivel de código, y sólo un pequeño número de métodos de clase suficiente como para mantener un único principio de responsabilidad a nivel de método

Interface Segregación Principio (interfaz Segregación Principio)

  1. El cliente no debe confiarse en ella no tiene acceso a
    puerto, es decir, una clase dependiente de otra clase
    debe estar basado en la interfaz más pequeña
  2. Mirar un mapa:
  3. Una clase a través de la interfaz Interface1 clases dependientes B, C a través de
    la interfaz, Interfaz 1 D-dependiente, si la interfaz
    Interface1 para las clases A y C no es de las interfaces más pequeños,
    a continuación, clase B y clase D para darse cuenta de que no tienen que ser cuadrados
    método.
  4. Por lo tanto, debe tratarse por el principio de segregación:
    división de una interfaz Interface1 como varias interfaces independientes,
    las clases A y C son dependientes sobre el establecimiento de una interfaz que necesitan
    relación. Es decir, utilizando el principio de segregación de interfaz.
    Aquí Insertar imagen Descripción
  5. Una clase través de la interfaz Interface1 clases dependientes B,
    Clase C a través de una interfaz Interface1 dependiente en el D,

Así que debemos dividir Interface1, se divide en tres interfaces.

Invocar el principio inverso (al revés)

principio de la dependencia Inversion

principio de sustitución de Richter

OO pensamiento y explicación de la herencia
  1. La herencia contiene esta capa de significado: la clase padre que han logrado una buena manera de especificaciones establecidas realidad y el contrato, aunque no es obligatorio para todas las subclases deben seguir estos contratos, pero si se han implementado una subclase de estos el método de cualquier cambio, puede causar daños a toda la jerarquía de herencia.
  2. En sucesión al programa diseñado para aportar comodidad, pero también trae desventajas. Por ejemplo, el uso de la herencia traerá procedimientos invasivos, reducir la portabilidad del programa, para aumentar el acoplamiento entre los objetos, si una clase es heredado por otras clases, a continuación, cuando las necesidades de esta clase para ser modificados, se debe tener en cuenta todas las subclases y la modificación de la clase padre, subclase que involucran todas las funciones son propensos a un mal funcionamiento
  3. Preguntas planteadas: en la programación, el uso correcto de la herencia principio de sustitución => Richter?
introducción básica
  1. Cuando se utiliza la herencia, seguir el principio de sustitución de Richter, en una subclase tratan de no anular el método de la clase padre
  2. principio de sustitución de Richter nos dice que, de hecho, hacen dos clases heredan de acoplamiento mejorado, en los casos apropiados,
    a través de Syntagma, confían en resolver el problema.
soluciones
  1. En la programación real, a menudo completar la nueva funcionalidad a través de la reescritura de la clase padre, escribimos es simple, pero el sistema de reutilización de toda la herencia será relativamente pobres. En particular carrera de varios estados con mayor frecuencia cuando
  2. El enfoque general es: la clase padre original y subclases heredan una herencia más populares de la clase base retire el original, el uso de la dependencia, la polimerización, en lugar de la relación de combinación.

Abierto Cerrado Principio

introducción básica
  1. Abierto Cerrado Principio (Principio Abierto Cerrado) es de programación de los principios más básicos y más importantes de diseño
  2. Una entidad de software, tales como clases, módulos y funciones debe ser abierta para la extensión (para el proveedor), cerrado por modificación (para el consumidor) . Marco abstracto para la construcción, implementado con detalle extensión.
  3. Cuando el software necesita ser cambiado, en la medida de lo posible mediante la ampliación de implementar cambios en el comportamiento de las entidades de software, en lugar de a través de modificaciones para lograr el cambio de código existente.
  4. Programación seguir otros principios, y el uso de patrones de diseño objetivo es seguir el principio de apertura y cierre .

Demeter

introducción básica
  1. Un objeto debe mantenerse a una comprensión mínima de otros objetos
  2. Cuanto más de cerca la relación entre clase y clase, mayor es el grado de acoplamiento
  3. Demeter (Demeter Principio) llama el principio menos conocido que una clase de sus clases dependientes sabe mejor. Es decir, sin importar la complejidad de las clases dependientes, tanto como sea posible la lógica interna se encapsula en la clase. métodos extranjeros indicarse además a público y no divulgar ninguna información
  4. Demeter hay una definición más simple: sólo se comunican directamente con los amigos
  5. amigos directos : Cada objeto tiene un acoplamiento relaciones con otros objetos, siempre y cuando la relación de acoplamiento entre dos objetos,
    nos dicen que la amistad entre los dos objetos. Muchos modo de acoplamiento, dependiente, asociada, en combinación, la polimerización
    y similares. Entre ellos, que llamamos apariencia variables miembro , los argumentos del método , los valores de retorno del método en la clase es un amigo directa, y
    apareció en las variables locales de la clase no somos amigos directos. En otras palabras, la clase desconocida mejor no variables locales
    aparecen en el formulario de la clase.
Demeter consideraciones y detalles
  1. núcleo Demeter es reducir el acoplamiento entre clases
  2. Pero nota: dado que cada clase de reducir la dependencia innecesaria, por lo tanto, sólo se requiere para reducir Demeter
    relación de acoplamiento (entre objetos) entre dos clases, los requisitos no son completamente dependencias

Síntesis de los principios de multiplexación

Principio es utilizar la información polimérico sintético / en lugar de herencia


La idea de la base de los principios de diseño

  1. Encuentra aplicaciones pueden requerir cambios en el lugar, ponerlos independiente, y los que no es necesario cambiar la generación de
    código mezclados entre sí.
  2. Para la programación de interfaz, en lugar de la programación.
  3. Para la interacción de acoplamiento flexible entre objetos de diseño y trabajo
Publicado 93 artículos originales · ganado elogios 31 · Vistas a 30000 +

Supongo que te gusta

Origin blog.csdn.net/weixin_43866567/article/details/104549733
Recomendado
Clasificación