Ley de Demeter en la Programación Orientada a Objetos

Manu Pijierro
1 min readApr 11, 2014

--

Actualización 17 de Septiembre de 2018: Publiqué un artículo profundizando y explorando más esta ley. Si quieres, puedes leerlo haciendo click en el siguiente enlace: Leer el artículo: “Encadenar llamadas a funciones: Lo que necesitas saber sobre la Ley de Demeter”.

La ley de Demeter es un principio básico de la programación orientada a objetos pero he de reconocer que no ha sido hasta leer el Código Limpio (Clean Code) de Robert C. Martin cuando he tenido conocimiento de ella. Es de gran utilidad para mantener la encapsulación del código de un proyecto.

Esta ley indica como un método f de una clase C debe comunicarse con otros métodos. De tal forma, dicho método f debe invocar métodos de:

  • C
  • Un objeto creado por f
  • Un objeto pasado como argumento a f
  • Un objeto en una variable de instancia de C

Se suele decir que ‘no hable con desconocidos, solo con amigos’. Enlace hacia la web de la ley de Demeter.

Ser demasiado riguroso con esta ley puede hacer que llenemos nuestros objetos con métodos que solo sirvan de intermediarios entre otros objetos. De ahí que Martin Fowler haya llamado a esta ley la sugestión de Demeter.

--

--

No responses yet