Isten osztály
Az objektumorientált programozásban az isten osztály vagy objektum vagy mindenható, vagy mindentudó. Azaz ő végez minden cselekvést, vagy ő tárol minden adatot a programban.
A programozásban bevett gyakorlat felosztani egy feladatot, és részenként megoldani. A teljes megoldás ezek együtteséből adódik. Így nem kell egy objektumnak mindenről tudnia; egyes részfeladatokat megoldó objektumok nem ismernek mást, és csak a saját részfeladatukat oldják meg, mit sem tudva az egészről.
Ezzel szemben ha a program tartalmaz egy isten objektumot, akkor a legtöbb funkciót egyetlen objektum látja el, vagy ő tud mindenről, és metódusokat tartalmaz az adatok kezelésére. A többi objektumnak kisegítő szerep jut. Ezzel az objektum istenszerűen működik, nem sok teret hagyva a többinek. Szoros kapcsoltsága miatt nehezen kezelhető, karbantartható; az egyik rutin javítása elronthatja egy másik rutin működését.
Nem objektumorientált, procedurális környezetben ehhez hasonló a szubrutinok használatának mellőzése, vagy túl sok globális változó használata.
Bizonyos esetekben ez a gyakorlat elfogadható, ahol a vezérlés központosítása és a hatékonyság fontosabb, mint a karbantarthatóság. Ilyenre példák a mikrovezérlők. Mivel azonban ezek is egyre gyorsabbak lesznek, erre egyre kevésbé lehet majd hivatkozni.
A nagy szőrös objektum (Big hairy object) egy túltelített adapter. Azonban az isten osztályt is szokták így hívni.
Kapcsolódó szócikkek
[szerkesztés]Források
[szerkesztés]- Riel, Arthur J.. Chapter 3: Topologies of Action-Oriented Vs. Object-Oriented Applications, Object-Oriented Design Heuristics. Boston, Massachusetts: Addison-Wesley (1996). ISBN 0-201-63385-X „3.2: Do not create god classes/objects in your system. Be very suspicious of an abstraction whose name contains Driver, Manager, System, or Subsystem.”
- Anti-Patterns and Worst Practices – Monster Objects Archiválva 2021. február 24-i dátummal a Wayback Machine-ben.
Fordítás
[szerkesztés]Ez a szócikk részben vagy egészben a God object című angol Wikipédia-szócikk fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.