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.