Komponensalapú webalkalmazás-fejlesztő rendszer

 

Jónás Richárd

Debreceni Egyetem

Matematikai és Informatikai Intézet

jonasr@mail.math.klte.hu

 

Kivonat

 

 

Manapság az Interneten való megjelenés mind az üzleti, mind a magánszférában nélkülözhetetlenné vált. Úgy tűnik, hogy egyre több személynek van szüksége olyan internetes oldalra, ahol információkat közölhet, és természetesen fogadhat is. Tehát az információtechnológiában dolgozó szakembereknek lehetővé kell tenniük, hogy ezeket a dinamikus HTML oldalakat, webalkalmazásokat tömegtermelésszerűen lehessen gyártani. Ehhez szükség van egy rugalmas, de erősen specializált eszközre, amellyel ez a feladat megoldható.

Előadásomban egy olyan általam készített keretrendszer kerül bemutatásra, amellyel a webalkalmazás komponensei definiálhatók, leírhatók, fordíthatók és futtathatók. Esetünkben a webalkalmazást először jól elkülöníthető ­- később újrafelhasználható - részekre kell bontani. Minden résznek vagy egy komponens feleltethető meg, vagy komponensek egy kompozíciója, ez utóbbit konténernek nevezzük. Természetesen a konténer is elhelyezhető egy weblapon, így a konténer is egy komponens.

A komponensek a jól ismert MVC elv alapján kerülnek leírásra. A komponens modell része definiálja, hogy mely adatokkal kell foglalkoznunk, a nézet része a komponens megjelenését határozza meg, a vezérlő rész pedig tartalmazza az üzleti logikát. A komponensek leírása egy XML állomány segítségével történik, mely alapján a rendszer legenerálja a komponenshez tartozó Java osztályokat, majd ezeket lefordítja és betölti. A komponenseket ezek után egy URL segítségével azonosíthatók és érhetők el. A komponensek integrációjakor a komponensek közötti kommunikációt és a köztük lévő (esetleges) öröklődési kapcsolatot is definiálnunk kell.

A komponensekkel szemben támasztott követelmények megváltozhatnak, ekkor vagy a Java nyelven megírt osztályokat kell módosítani, vagy a komponensek definicióját. Előadásomban kitérek az említett két fejlesztési módszer közötti különbségre, előnyeikre és hátrányaikra, továbbá megvizsgálom, hogy hogyan reagál a rendszer a komponens XML definiciójának megváltozására. Végezetül egy konkrét rendszer elkészítésén keresztül a rendszer hatékonysága is vizsgálatra kerül.