Sobes.tech
Middle

Wat is koppeling in code?

sobes.tech AI

Antwoord van AI

Koppeling (coupling) is de mate van verbondenheid tussen modules, klassen of componenten van een programma. Een hoge koppeling betekent dat een wijziging in één component waarschijnlijk wijzigingen in een andere vereist.

Soorten koppeling (van sterk naar zwak):

  • Inhoudelijke koppeling: Een module benadert of wijzigt de interne inhoud van een andere module.
  • Gemeenschappelijke koppeling: Modules gebruiken gedeelde globale gegevens.
  • Externe koppeling: Modules afhankelijk van het gegevensformaat dat van buiten wordt overgedragen of van externe apparaten/interfaces.
  • Controlekoppeling: Eén module geeft controlevlaggen door aan een andere, wat de logica beïnvloedt.
  • Sjabloonkoppeling: Eén module geeft een datastructuur door aan een andere, maar de tweede gebruikt alleen een deel van deze structuur.
  • Gegevenskoppeling: Eén module geeft alleen de benodigde gegevens door aan een andere.
  • Berichtgebaseerde koppeling (declaratief): Modules communiceren door berichten uit te wisselen zonder de interne structuur van de ander te kennen (typisch voor gebeurtenissen, webservices).
  • Geen koppeling: Modules zijn volledig onafhankelijk.

Een lage koppeling is wenselijk, omdat het de testbaarheid, onderhoudbaarheid en flexibiliteit van het systeem verhoogt.