Sobes.tech
Middle+

Mis on madal sidusus ja kõrge kooskõla (low coupling, high cohesion)?

sobes.tech AI

Vastus AI-lt

Madal seotavus (low coupling) un kõrge seotavus (high cohesion) on disainiprintsiibid, mis on suunatud kergesti hooldatava, laiendatava ja testitava koodi loomisele.

Madal seotavus (Low Coupling)

  • Tähendab, et komponendid (klassid, moodulid) sõltuvad üksteisest minimaalselt. Muudatused ühes komponendis avaldavad teistes minimaalselt mõju.
  • Madala seotavuse tunnused:
    • Komponendid suhtlevad selgelt määratletud liideste kaudu.
    • Otsejuurdepääs teiste komponentide sisemistele detailidele on minimaalne.
    • Muudatused ühe komponendi rakendamises ei nõua muudatusi teistes.
  • Eelised:
    • Eraldi komponentide testimine muutub lihtsamaks.
    • Kood muutub paindlikumaks ja lihtsamini laiendatavaks.
    • Vähendab vigade tekkimise riski muudatuste tegemisel.

Kõrge seotavus (High Cohesion)

  • Tähendab, et komponendi sees olevad elemendid on loogiliselt seotud ja täidavad ühte selgelt määratletud ülesannet. Kõrge seotavusega komponent keskendub ühele vastutusele.
  • Kõrge seotavuse tunnused:
    • Kõik klassi meetodid kuuluvad ühte funktsionaalsesse valdkonda.
    • Klass ei sisalda mitteseotud funktsionaalsust.
    • Ühe ülesandega seotud loogika on koondatud ühte kohta.
  • Eelised:
    • Kood muutub arusaadavamaks ja kergemini loetavaks.
    • Lihtsustab vigade lokaliseerimist ja kõrvaldamist.
    • Komponent muutub taaskasutatavaks.

Ideaalis peaks püüdma madala seotavuse vahel komponentide vahel ja kõrge seotavuse iga komponendi sees.