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.