Cohesión y acoplamiento

¿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.