Sobes.tech
Senior

Mi az a GRASP?

sobes.tech MI

Válasz az MI-től

A GRASP (Általános felelősség-kihelyezési minták) egy univerzális elvek gyűjteménye az osztályok és objektumok felelősségeinek kijelölésére az objektumorientált tervezésben. Segítenek rugalmas, karbantartható és újrahasznosítható rendszerek létrehozásában. A GRASP fő mintái a következők:

  • Információs Szakértő: Egy objektum, amely rendelkezik a művelet végrehajtásához szükséges információkkal, vállalja ennek a műveletnek a felelősségét.
  • Készítő: Az osztály, amely más osztálypéldányokat tartalmaz vagy aggregál, szorosan kapcsolódik hozzájuk vagy inicializálási adatokat tartalmaz azok létrehozásához, vállalja azok létrehozásának felelősségét.
  • Irányító: Az osztály, amely egy rendszeresemény (pl. felhasználói művelet) kezeléséért felelős, koordinálnia kell más objektumok munkáját, de nem maga végzi el a munkát.
  • Tiszta Gyártás: Mesterségesen létrehozott osztály, amely nem tükrözi a domain fogalmát, de a kötődés csökkentése, a kohézió javítása vagy az újrahasznosítás megkönnyítése érdekében készült.
  • Alacsony Kötöttség: Olyan tervezési elv, amely minimalizálja az osztályok közötti függőségeket.
  • Magas Kohézió: Olyan tervezési elv, amely szerint az osztály metódusai szorosan összefüggnek funkcionálisan.
  • Polimorfizmus: A felelősségek kijelölése a viselkedés kiválasztására az objektum típusán alapulva (virtális metódusokon keresztül).
  • Védett Változatok: Olyan tervezési elv, amely védi a többi elem (objektumok, alrendszerek, rendszerek) változásaitól, stabil interfész meghatározásával.
  • Közvetítés: A felelősségek kijelölése egy közvetítő objektumhoz a két elem közötti közvetlen kapcsolat elkerülése érdekében.

A GRASP alkalmazása segít elkerülni a "vastag" vezérlőket és menedzsereket, javítja a kód szerkezetét és megkönnyíti a fejlesztést.