Zákon Deméter

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Zákon Deméter (angl. Law of Demeter) je známý též jako princip minimální znalosti (angl. Principle of Least Knowledge).

Při definici každé entity bychom měli minimalizovat počet entit, které daná entita pro splnění daného úkolu oslovuje, což je designová směrnice pro vývoj softwaru, zejména objektově orientovaného programování. V obecné formě je zákon Deméter specifický případ nízké provázanosti.

Zákon lze stručně shrnout jako:

  • Každá jednotka by měla mít jen omezené znalosti o dalších jednotkách: pouze jednotky úzce spjaté s touto jednotkou.
  • Každá jednotka by měla mluvit pouze se svými přáteli a nemluvit s cizími lidmi.
  • Mluvit jen s bezprostředními přáteli.

Základní představa je, že daný objekt by měl vědět minimum o struktuře a vlastnostech čehokoliv jiného.

5 pravidel[editovat | editovat zdroj]

Zákon Deméter požaduje těchto 5 pravidel pro posílání zpráv metodou M v objektu O:

  1. O (this) = sobě
  2. parametrům metody
  3. objektům, které byly v rámci metody vytvořeny/instanciovány
  4. komponentám, které jsou součástí O
  5. globálním proměnným přístupným objektem O v rozsahu metody M

Externí odkazy[editovat | editovat zdroj]