Principios de diseño de clases: acoplamiento, cohesión, encapsulamiento y refactorización

Clasificado en Otras materias

Escrito el en español con un tamaño de 4,7 KB

Principios de diseño de clases y calidad de código

Acoplamiento

Acoplamiento: describe la interconectividad de las clases.

Cohesión

Cohesión: describe cuánto se ajusta una unidad de código a una tarea lógica o a una entidad.

Duplicación de código

Duplicación de código: tener el mismo segmento de código en una aplicación más de una vez es señal de mal diseño.

Ejemplo: funciones de una aventura de texto

CrearHabitaciones: se definen salidas.

imprimirBienvenida: se imprimen las salidas de la habitación actual para que el jugador sepa dónde ir.

irHabitacion: se usan las salidas para encontrar la siguiente habitación.

Encapsulamiento

Encapsulamiento: reduce el acoplamiento y conduce a un mejor diseño.

Diseño dirigido por responsabilidades

Diseño dirigido por responsabilidades: es el proceso de diseñar clases asignando responsabilidades bien definidas a cada una.

Localización de los cambios

Localización de los cambios: las modificaciones en una clase debieran tener efectos mínimos sobre las otras clases.

Método cohesivo

Método cohesivo: es responsable de una y solo una tarea bien definida.

Clase cohesiva

Clase cohesiva: presenta una única entidad bien definida. (Hay dos tipos: legibilidad y reusabilidad.)

Refactorización

Refactorización: es la actividad de reestructurar un diseño existente para mantener un buen diseño de clases cuando se modifica o se extiende una aplicación.

Repetición del mismo contenido

Acoplamiento: describe la interconectividad de las clases.

Cohesión (repetición)

Cohesión: describe cuánto se ajusta una unidad de código a una tarea lógica o a una entidad.

Duplicación de código (repetición)

Duplicación de código: tener el mismo segmento de código en una aplicación más de una vez es señal de mal diseño.

Ejemplo repetido: funciones de una aventura de texto

CrearHabitaciones: se definen salidas.

imprimirBienvenida: se imprimen las salidas de la habitación actual para que el jugador sepa dónde ir.

irHabitacion: se usan las salidas para encontrar la siguiente habitación.

Encapsulamiento (repetición)

Encapsulamiento: reduce el acoplamiento y conduce a un mejor diseño.

Diseño dirigido por responsabilidades (repetición)

Diseño dirigido por responsabilidades: es el proceso de diseñar clases asignando responsabilidades bien definidas a cada una.

Localización de los cambios (repetición)

Localización de los cambios: las modificaciones en una clase debieran tener efectos mínimos sobre las otras clases.

Método cohesivo (repetición)

Método cohesivo: es responsable de una y solo una tarea bien definida.

Clase cohesiva (repetición)

Clase cohesiva: presenta una única entidad bien definida. (Hay dos tipos: legibilidad y reusabilidad.)

Refactorización (repetición)

Refactorización: es la actividad de reestructurar un diseño existente para mantener un buen diseño de clases cuando se modifica o se extiende una aplicación.

Entradas relacionadas: