Régen írtam ide, van mit pótolnom....
Közben megtaláltam a szakdolgozatom témáját, konzulenst is találtam és felvettem a tárgyat. Maradtam a JAVA közelében, mert valamiért ezt korszerűnek és hatékony eszköznek tartom. Meggyőződésem hogy az objektum-orientált gondolkodás mód az amivel valóban hatékonyan lehet alkalmazásokat tervezni, fejleszteni. A JAVA pedig éppen egy ilyen eszköz, tisztán oo nyelv, nem úgy mint a C++ ami oo lehetőségekkel és néhány hasznos kiterjesztéssel felturbózott C nyelv. Az a baj az ilyen hibrid dolgokkal, hogy nagy a csábítás hogy visszakanyarodjunk a procedúrális programozáshoz. Ez kényelmes lehet és ha kényelmes miért ne használjuk? Valahogy úgy gondolom, hogy procedúrális programozással egy bizonyos problémára speciális megoldást keres így jutunk el a megvalósításhoz. Az oo programozással pedig alulról építkezve általánosan használható osztályokkal tudjuk felépíteni a rendszerünket, ahol az osztályok más problémák megoldására is felhasználhatók.
A lényeg hogy nekem a JAVA mint tiszta oo nyelv és mint platformfüggetlen környezet nagyon szimpatikus, ráadásul az üzleti életben is kedvelt fejlesztőeszköz, így mindenképp hasznos lehet az ismerete. Ezek után nem volt más mint felkeresni a Programozás III. tantárgy oktatóját Varjasi Norbertet. Ő tanította a JAVA-t és a Beágyazott programozást (ami enbended JAVA). Ő javasolta hogy foglalkozzam a perzisztens tárolással. Körülnéztem a témában és így született meg a szakdolgozat témája és címe:
Java objektumok perzisztens tárolása Hibernate használatával
Gyakorlatilag arról van szó, hogy az objektumokat - melyek bonyolult kapcsolatban vannak egymással - elmentsük, majd egy újbóli futtatáskor visszatölthessük és felhasználhassuk. Bonyolultan hangzik, de nem az. Valójában adatbáziskezelés valósul meg a Hibernate használatával, de közben a program írásakor osztályokkal, objektumokkal dolgozunk. A Hibernate egy előre meghatározott konfiguráció szerint az objektumokat megfelelteti egy adatbázistábla rekordjaitnak, az adattagokat a rekordok mezőinek. Ez az úgynevezett ORM (Object Relation Mapping) technika. Ráadásul egy hatékony HSQL-nek nevezett lekérdező nyelvet is biztosít, mely SQL kompatibilis és gyüjteményeken tudunk a segítségével lekérdezéseket futtatni (természetesen a gyüjtemények perzisztens objektumok).
A téma kiválasztása megtörtént tehát. A megvalósítás van folyamatban. Vannak tanulságok és döbbenetek (a JAVA-val kapcsolatban) amikről majd írok később....