Belsőplatform-hatás

A Wikipédiából, a szabad enciklopédiából

A belsőplatform-hatás az a tendencia, amikor a programozók lemásolják az általuk használt keretrendszer konfigurálhatóságát, így a program a keretrendszer szegényes másolata lesz. Ez általában nem hatékony, és William J. Brown antimintának tekinti.

Példák[szerkesztés]

Szövegszerkesztők és webböngészők képességei bővíthetők pluginok hozzáadásával. A pluginok fejlesztői gyakran kénytelenek újraalkotni egy olyan programot, ami az operációs rendszer felső szintjén fut. A Firefox kiegészítő mechanizmusát használták arra, hogy több FTP-klienst és -fájlkezelőt hozzanak létre, amellyel hatékonyan másolja az operációs rendszer képességeit egy korlátozottabb platformon.

Az adatbázisok világában gyakran megkerülik az RDBMS-t, például mindent egy nagy táblában tárolnak, aminek három oszlopa az entitás azonosítója, kulcsa és értéke. Míg ez az entitás-attributum-érték modell lehetővé teszi a kitörést az SQL korlátai közül, addig ezzel elvész az adatbázis használatának összes előnye.[1] Ennek az az oka, hogy most már ahelyett, hogy az RDBMS hatékonyan el tudná végezni a szükséges műveleteket, külső alkalmazásokra van szükség. Bonyolultabbá válnak a lekérdezések,[2] az indexek és a lekérdezésoptimalizálók hatékonyságukat vesztik, és az adatok érvényességi megkötései nem ellenőrizhetők. A program lassúvá és nehezen karbantarthatóvá válik.

Hasonlóval próbálkoznak XML-ben is. Az információt attributumokban tárolják, az elemek nevét pedig semmitmondónak adják meg. Például az elem neve item, type és value attributumokkal. A jelentés kivonatolására join műveletekre van szükség, több attributumon keresztül. Mivel a join egy kevéssé hatékony művelet, az XPath lekérdezések is kevéssé hatékonyak lesznek, amellett, hogy bonyolódnak is. A szerkezeti érvényesség vizsgálata kevés előnnyel jár.

Egy további példa a web desktop, ahol egy teljes ablakozó rendszert kapunk, ami webböngészőben fut (ami az operációs rendszer által nyújtott felületen fut), és rajta is futhat webböngésző. A web desktop szokatlanul kényelmetlen lehet a felhasználóknak (felület felületen belül), így általában csak arra használják, hogy olyan programokat futtasson, amelyek nem deployolhatók közvetlenül az operációs rendszerre vagy kitakarják a teljes felületet.

Hatása[szerkesztés]

Teljesen normális, ha olyan könyvtárat hoznak létre, ami támogatja a specifikus projektet. Belsőplatform-hatásról akkor beszélnek, ha általános célú függvényeket valósítanak meg újra, amely függvények már megvannak a nyelvben vagy a keretrendszerben. Mivel ezek a platform több függvényét hívják meg, lassabbak, és többnyire kevésbé megbízhatók.

Másrészt ezeket a függvényeket gyakran azért hozzák létre, hogy egyszerűbb, hordozható platformot alkossanak szemben az alatta levő nem hordozható, sokkal összetettebb, túl bonyolult interfészű réteg fölé.

A belső platformkód megalkotása hasznos lehet a hordozhatóság vagy a jogok elkülönült kezelésének érdekében, így amit ezzel készítenek, annak nem kell törődnie az alsó szintekkel, sem pedig a dobozon kívüli jogi környezettel. Így tervezte például a Sun Microsystems a Java virtuális gépet.

Jegyzetek[szerkesztés]

  1. Look-up Tables in SQL, 2011. február 1. [2016. szeptember 23-i dátummal az eredetiből archiválva]. (Hozzáférés: 2018. augusztus 10.)
  2. Lookup Table Madness, 2004. szeptember 8. [2018. augusztus 10-i dátummal az eredetiből archiválva]. (Hozzáférés: 2018. augusztus 10.)

Források[szerkesztés]

Fordítás[szerkesztés]

Ez a szócikk részben vagy egészben az Inner-platform effect 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.