¿Cómo se denomina el grado de relación que existe entre los datos y métodos o funciones internos de un módulo? -> Cohesión
La cohesión mide el grado de relación entre los elementos internos de un módulo.
Es decir:
- los datos;
- los métodos;
- las funciones.
Cuanto más relacionados estén entre sí y más orientados a un único propósito, mayor cohesión tendrá el módulo.
👉 La cohesión alta es deseable.
El acoplamiento mide la dependencia entre módulos distintos, no dentro del mismo módulo. Se busca bajo acoplamiento.
Complejidad -> Hace referencia a la dificultad del software, pero no a la relación entre los elementos internos de un módulo.
Código duplicado -> Es un defecto de diseño, pero no un concepto de modularidad.
Esquema muy útil para estudiar
Cohesión
Mide:
➡ Relación dentro de un módulo.
Objetivo:
- Alta cohesión.
Acoplamiento
Mide:
➡ Dependencia entre módulos.
Objetivo:
- Bajo acoplamiento.
Truco para recordar
Cohesión
Dentro.
↓
Los elementos del módulo «van juntos».
Acoplamiento
Entre módulos.
↓
Cuanto menos dependan unos de otros, mejor.
Regla de oro
Un buen diseño tiene:
Alta cohesión + Bajo acoplamiento
Es probablemente la frase más preguntada de diseño software.