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.