A Kedves Olvasó már bizonyára hallott az Internetrôl és a World Wide Webrôl, a ma legdinamikusabban fejlôdô kommunikációs és információs hálózatról. A Java programozási nyelv egy fejlôdô, objektum-orientált programozási technológia, amely lehetôvé teszi hordozható interaktív alkalmazások készítését. Itt a hordozhatóság nemcsak a forrásprogram új architektúrákra történô problémamentes átvitelét jelenti, hanem a lefordított "gépi kódú" tárgyprogram korlátozások nélküli hordozhatóságát is.
A Java mögött lévô technológia jónéhány komponense már évtizedes múltra tekinthet vissza; a professzionális szoftverfejlesztôk már régóta használhatták ezeket szoftvertermékeikben. A Java tervezôi ezen eszközöket és szabványokat integrálták egy rendszerbe. A Java technológia jelentôségét tehát abban kell keresni, hogy már kikristályosodott szabványokat, eszközöket foglal egy rendszerbe, ezáltal elérhetôvé téve azt bárki számára. Ezt a technológia-népszerûsítô szerepet az is segíti, hogy a programok írásához szükséges fejlesztôi eszközök (fordítóprogram, futtató környezet és segédprogramok), valamint ezek dokumentációja bárki számára szabadon elérhetô.
A Java egy objektum-orientált eszközkészletbôl építkezô programozási nyelv. Ma az objektum-orientált szoftverfejlesztés, illetve ennek különféle módszertanai és eszközei futótûzként terjednek. Mint a programozásról általában, errôl is elmondható, hogy nem lehet csupán osztályteremben, tábláról elsajátítani, gyakorlati ismeretek megszerzésére is szükség van. Eddig erre leginkább az objektum-orientált programozási nyelvek nyelvi eszközein keresztül volt lehetôség, mivel az igazán nagyméretû programok illetve programrendszerek rendszerterveihez elég nehéz (oktatási célokra gyakorlatilag lehetetlen) hozzáférni.
A Java technológia ilyen területen is nagy segítséget nyújthat a benne levô szabványos könyvtárak illetve komponensek szabad elérhetôségével, ugyanis ezeken keresztül jól megtervezett és felépített objektum-orientált eszközökhöz férhet hozzá bárki. Azon túl, hogy ezek önmagukban is megállják a helyüket, úgy is érdemes ôket vizsgálni, mint régóta létezô -- akkoriban még nem objektum-orientált szemlélettel megtervezett -- szabványos eszközök objektum-orientált köntösbe bújtatott változatait. Manapság a szoftverfejlesztôk egyre gyakrabban találkoznak azzal a problémával, hogy a korábban procedurális tervezési elvekkel kialakított szoftvereszközeiket tovább szeretnék használni a modern fejlesztôi környezetekben: a Java szabványos csomagjain keresztül tanulmányozhatjuk, hogy ezt a feladatot a Java tervezôinek hogyan és milyen kompromisszumok árán sikerült megoldaniuk.
Könyvünkkel elsôsorban a számítástechnikai és informatikai témakörökkel foglalkozó szakemberek, valamint a felsôfokú tanulmányaik keretében ezekkel a témakörökkel foglalkozó egyetemi és fôiskolai hallgatók munkáját szeretnénk megkönnyíteni, illetve lehetôvé tenni. Feltételezünk bizonyos mennyiségû informatikai elôismereteket olvasóinktól: így legalább egy másik (például C, C++ vagy Modula-2) programozási nyelv ismeretét, valamint azt is, hogy ténylegesen írt is már programokat valamilyen más programozási nyelven, és ismer egy szövegszerkesztô programot, mellyel a programok forráskódját a számítógépbe tudja írni.
Reméljük, hogy mindazok is haszonnal forgatják majd könyvünket, akik a nyílt rendszerek vagy a Java témakörében keresnek szakdolgozati vagy diplomamunka-témákat, és bízunk benne, hogy az itt leírtak újabb ötleteket adnak kutatásaikhoz.
A szerzôk és a kiadó megköszönik azoknak a fáradozásait, akik e könyv létrejöttét munkájukkal és erôfeszítéseikkel segítették.
Megköszönjük Benczúr Andrásnak és Kozma Lászlónak a Java technológiának a tanszéki oktatásba történô integrálásában nyújtott segítségét.
Külön köszönetet mondunk Horváth Zoltánnak a szövegszedéssel kapcsolatos tapasztalatainak és segédeszközeinek a rendelkezésünkre bocsátásáért, hasznos tanácsaiért.
A könyv megírása során szabadon felhasználhattuk, és fel is használtuk az ELTE TTK Informatikai Tanszékcsoportjának infrastrukturáját, enélkül ez a könyv valószínûleg nem készülhetett volna el.
Az ELTE TTK Hallgatói Alapítvány és az AMFK könyvünk létrejöttét szintén támogatták, ezt ezúton is megköszönjük.
Végül ezúton szeretnénk köszönetet mondani Molnár Jenônének, az Akadémiai Nyomda munkatársának valamint az Akadémiai Nyomdának, hogy könyvünk nyomdai munkáit még 1996-ra elvállalták.
Egy ilyen nagy terjedelmû könyvben annak ellenére, hogy a szerzôk és a szerkesztôk a legjobb tudásuk szerint állították össze, elôfordulhatnak hibák. Megkérjük az Olvasót, ha ilyet talál, akkor ezt írja meg elektronikus levélben a javamegj@java.inf.elte.hu címre vagy pedig a Kiadónak. A szerzôk minden konstruktív kritikát örömmel fogadnak.
Az oldalt készítette: Frohner Ákos