Adapter programozási nyelvekhez

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

A programozás és a szoftvertervezés során az adapter egy olyan felületet biztosít (API), amely biztosítja az idegen könyvtár vagy operációs rendszer szolgáltatásának használatát (amely nem az adott nyelven íródott).

Jellemzők[szerkesztés]

Az adapter általánosan az egyik dolognak a másikra való leképzését jelenti. A szoftverkönyvtárak esetében az adapterek úgynevezett csomagolókönyvtárak, melyek két programozási nyelvet hidalnak át, így az egyik nyelvre írt könyvtár más nyelven is használható. Számos szoftverkönyvtár íródott C vagy C++ nyelven. Az ilyen általában magasabb szintű nyelveken, mint például a Java, Common Lisp, Scheme, Python vagy Lua nyelvből származó könyvtárak használatához létre kell hozni a könyvtáradaptert, ami megkövetelheti a nyelv kódjának újrafordítását. Ugyanakkor a legtöbb nyelv idegen felületet kínál, mint például a Python és az OCaml’s típusait, valamint az Embeddable Common Lisp CFFI és UFFI fájljait.

Például a Python-adaptereket akkor használják, ha egy fennmaradó C-könyvtárat egy bizonyos cél megvalósítása érdekében írnak, és a Python-ból kell használni. Egy másik példa a libsvn, melyet C-ben írtak, hogy API-t biztosítson a Subversion szoftvertárolóhoz. A Subversion elérése egy Java-kódon belül a libsvnjavahl-lel történik, amely a libsvn telepítésétől függ, és egyfajta hídként szolgál a Java és a libsvn között, ezáltal biztosítva egy olyan API-t, amely a libsvn funkcióit meghívja a munka elvégzésére.

A könyvtári adapterek létrehozásának fő céljai közé tartozott a szoftver újrahasznosítása, a könyvtár több nyelvel történő újbóli telepítésének csökkentése, valamint az algoritmusok hatékony végrehajtása magas szintű nyelveken.

Jegyzetek[szerkesztés]

További információk[szerkesztés]