10. előadás. Alapfogalmak. Adatbázisrendszerek előadás november 28.

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "10. előadás. Alapfogalmak. Adatbázisrendszerek előadás november 28."

Átírás

1 10. előadás Alapfogalmak Adatbázisrendszerek előadás november 28. OO, és Debreceni Egyetem Informatikai Kar Az előadások Elmasry & Navathe: Database Systems alapján készültek. 10.1

2 Hagyományos adatmodellek: Hierarchikus Hálózati (a 60 s évek közepe óta) Relációs (1970 óta illetve 1982 óta) (OO) adatmodellek 90 s évek közepétől. Az objektumorientált létrehozásának okai: Tradicionális adatmodellek (relációs, hálózatos, hierarchikus) sikere a tradicionális alkalmazásoknál Növekvő igény a komplex adatbázis alkalmazások iránt, pl. CAD/CAM, CIM, tudományos, telekom, GIS, multimédia Komplexebb struktúrájú objektumok megjelenése, hosszabb futamidejű tranzakciók, új adattípusok (képek, filmek, nagy szöveges állományok), nem-standard alkalmazás-generált műveletek Igény arra, hogy kezelni tudjunk tetszőleges adattípust a hagyományos lekérdező nyelvek megtartásával OO programozási nyelvek elterjedése, a hagyományos adatbázis rendszerek nehézkesen működnek együtt OO nyelvekkel (C++, Java, Smalltalk) OO 10.2

3 Objektum-orientált (OO) adatbázis rendszerek Object Databases (O(O)DB): Objektum-orientált Object Database Management Systems (OD(B)MS): Objektum-orientált adatbázis-kezelő rendszerek Fő jellemző és előny: a tervező specifikálni tudja mind a sokszorosan összetett objektumok szerkezetét, mind az ezeken az objektumokon alkalmazható műveleteket Objektum-relációs rendszerek (ORDBMS): a tradicionális RDBMS-ek OO szemlélettel való bővítései (Oracle), SQL 2008 szabvány (először mint SQL/Object majd az SQL/Foundation része) Tisztán OO rendszerek kísérleti prototípusai: ORION (MCC), OpenOODB (Texas Instruments), IRIS (HP), ODE (AT&T Bell Labs) Üzleti tisztán OO rendszerek: GEMSTONE/S Object server (GemStone Systems), ONTOS DB, Objectivity/DB, Versant Object Database, ObjectStore, Ardent Szabványosítás az ODMG (Object Database Management Group) konzorcium keretében: ODMG 3.0 szabvány OO 10.3

4 OO fogalmak áttekintése Objektum-orientált (OO) szó eredete az OO programozási nyelvekre vezethető vissza Objektum azonosító (OID) fogalma SIMULA nyelv (60 s évek vége): az osztály fogalmának bevezetése, egy objektum belső adatstruktúrájának leírása egy osztály deklarációban Absztrakt adattípus (absztrakt adatobjektum) fogalmának bevezetése: objektum szerkezete és típus konstruktorok A műveletek egységbezárása (encapsulation), a belső adatstruktúra elrejtése, az alkalmazható külső műveletek, metódusok meghatározása Perzisztencia (állandóság) és tranziencia (ideiglenesség) Típus és osztály hierarchia és Első tiszta OO nyelvek egyike: Smalltalk (Xerox PARC), üzenetküldés és Hibrid OO programozási nyelvek: C++ OO 10.4

5 Objektum Két komponense van: állapot (érték) és tulajdonság (művelet) (korai definíció) Hasonló a program változójához kivéve, hogy összetett adatstruktúra is lehet és a programozó speciális műveleteket definiálhat rajta Az objektumok az OO programozási nyelvekben tranziensek (átmenetiek), a futás befejeztével törlődnek Az objektumok az ODMS-ekben perzisztensek (állandóak), eltárolódnak, később kinyerhetőek és megoszthatóak más programokkal Egy ODMS általában több OO programnyelvhez kapcsolódik állandó és osztott objektumokat szolgáltatva számukra OO 10.5

6 jellemzői Direkt kapcsolat a valós világ és az adatbázis objektumai között az objektum azonosító (OID) révén Tetszőlegesen összetett szerkezetű objektum megengedett (minden az objektummal kapcsolatos információ tárolható, míg a relációs ban az információ sok relációban szóródik szét) Egyedváltozók (instance variables): azon értékeket hordozzák, melyek az objektum belső állapotát írják le. Hasonló a relációs modell attribútumához kivéve, hogy a külső felhasználók számára nem láthatóak. Teljes egységbezárás: minden a felhasználók által használható műveletnek előre definiáltnak kell lenni. (Túl szigorú, pl. a lekérdezésekhez tudni kell az attribútum neveket, az ad-hoc lekérdezéseket nehéz specifikálni.) Az egységbezárás támogatására a műveletek két részből állnak: interfész (felület) és metódus (törzs). Az első a művelet nevét és paramétereit írja le, a második a művelet implementációját specifikálja. OO 10.6

7 jellemzői Típusok és osztályok hierarchiája és e: típusok és osztályok inkrementális létrehozása, újrahasznosítás Reláció-kezelés: az egységbezárás miatt ez elrejtésre került a külső felhasználók számára (korai rendszerek problémája), az ODMG szabvány ezt megoldotta a bináris kapcsolatok explicit megjelenítésével, inverz hivatkozási párral Verzió-kezelés: egy objektumnak időbeni története van, ennek a nyomonkövetése. Sémaevolúció (ld. ALTER TABLE) Művelet túlterhelés (operator overloading): ugyanaz a művelet többféle típusú objektumon is végrehajtható, a művelet nevéhez több különböző implementáció tartozik attól függően, hogy milyen objektumra kívánjuk alkalmazni. (operátor polimorfizmus polymorphism) Késői kötés: a futás során kapcsolódik össze a művelet neve és a megfelelő implementáció. OO 10.7

8 Objektum azonosító Az adatbázisban tárolt minden különböző objektum kap egy azonosítót: objektum azonosító (OID - object identifier). Feladata: az adatbázis objektumainak egyértelmű azonosítása, segítségével objektumok közötti hivatkozásokat tudunk létrehozni és kezelni. Egy program alkalmas típusú változójához is hozzárendelhetjük ha szükséges. Tulajdonságok: megváltozhatatlanság, egyértelműség, láthatatlanság (külső felhasználó szempontjából), ábrázolás hosszú egész Az OID nem függhet az objektum egyes értékeitől sem, szemben az elsődleges kulccsal a relációs modellben és értékek (literálok): a legtöbb rendszer külön kezeli, az objektumok megváltozhatatlan OID-vel rendelkeznek, míg az értékeknek nincs OID-jük (így más objektumok nem hivatkozhatnak rájuk) és csak magukban állnak. Egyes rendszerek megengednek OID nélküli komplex struktúrákat mint literálokat. OO 10.8

9 Az ODMS-ekben az objektumok és a literálok tetszőleges összetettségű típus szerkezettel bírhatnak, amely az összes szükséges információt tartalmazza. A hagyományos adatbázis rendszerekben az összetett objektumokkal kapcsolatos információk sok relációra illetve rekordra szóródnak szét elvesztve így sokszor a direkt kapcsolatot a valós világ objektumai és azok adatbázisbeli reprezentációi között. OO databázisokban egy összetett objektum állapota más objektumok alapján határozódik meg ún. típus konstruktorok segítségével. formális leírása egy hármassal történik: (i, c, v), ahol i az objektum azonosítója, c a típus konstruktor és v az objektum állapota (jelenlegi értéke) Alapvető típus konstruktorok: atom, rekord (struct, tuple), kollekció (több-értékű) További konstruktorok a kollekción belül: halmaz (set), lista (list), zsák (bag), tömb (array), szótár (dictionary) OO 10.9

10 A konstruktorok értelmezése Atom konstruktor, (i, atom, v): az i azonosítójú objektum állapota a v atomi értéket veszi fel. Lényegében az alapvető beépített adattípusokat tartalmazza, már nem használjuk a legutóbbi objektum szabványokban. Rekord konstruktor, (i, rekord, a 1 : i 1, a 2 : i 2,..., a n : i n ): az i azonosítójú objektum egy n hosszú rekord, melyben a j a j-edik attribútum neve, i j pedig annak az objektumnak az azonosítója melyet értéknek felvesz. Összetett típusnak is nevezik, bár inkább típus-generátorként gondolhatunk rá. Halmaz konstruktor, (i, halmaz, i 1, i 2,..., i n ): az i azonosítójú objektum egy halmaz, amely az i 1, i 2,..., i n (általában azonos típusú) különböző objektumokból áll. Lista konstruktor, (i, lista, [i 1, i 2,..., i n ]): az i azonosítójú objektum egy rendezett lista (azonos típusú) a felsorolásbeli azonosítójú objektumokból. Zsák konstruktor, (i, halmaz, i 1, i 2,..., i n ): az i azonosítójú objektum egy zsák, amely az i 1, i 2,..., i n (általában azonos típusú) objektumokból áll, melyek között azonosak (azaz az OID-jük megegyezik) is lehetnek. OO 10.10

11 A konstruktorok értelmezése Tömb konstruktor, (i, tömb, [i 1, i 2,..., i n ]): az i azonosítójú objektum egy egy-dimenziós tömb a listabeli azonosítójú objektumokból. Szótár konstruktor, két rekord egy (K, V ) párja, ahol K a kulcs, melyre a V értéket kapjuk vissza. A lista abban különbözik a halmaztól, hogy rendezett. A tömb abban különbözik a listától, hogy a dimenzója véges (ismert). A zsák (multihalmaz) abban különbözik a halmaztól, hogy ugyanaz az objektum többször is szerepelhet. A kollekció típus fő jellemzője, hogy azonos típusú objektumok vagy értékek (ha literálról van szó) összessége. Ezzel szemben a rekord általában különböző típusú objektunok együttese. OO 10.11

12 Konstruktorok alkalmazása és osztályozása Ez az objektum modell megengedi a korábban definiált és más konstruktorok tetszőleges mélységű egymásba ágyazását. Mivel az összetett (nem-atomi) objektumok más, egyszerűbb objektumokra hivatkoznak az objektum azonosítók révén, az aktuális állapot csak az atomi típusú objektumok állapotaiban jelenik meg. Gyűjtemény (kollekció collection) konstruktor típusok: halmaz, lista, tömb, zsák, szótár. Strukturált konstruktor típusok: rekord (hasonló a struct konstruktorához a C(++) nyelvnek) OO 10.12

13 Példák objektumokra Egy vállalathoz kapcsolódó objektumok, használt konstruktorok: atom, halmaz, rekord. Az i 1, i 2,... a rendszer által generált objektum azonosítók o 1 = (i 1, atom, Budapest ) o 2 = (i 2, atom, Kecskemét ) o 3 = (i 3, atom, Vác ) o 4 = (i 4, atom, 5) o 5 = (i 5, atom, Kutatás ) o 6 = (i 6, atom, május 22. ) o 7 = (i 7, halmaz, {i 1, i 2, i 3 }) o 8 = (i 8, rekord, Rnév:i 5, Rszám:i 4, Vezető:i 9, Telephely:i 7, Alkalmazottak:i 10, Projektek:i 11 ) o 9 = (i 9, rekord, Vezető:i 12, Kezdő_dátum:i 6 ) o 10 = (i 10, halmaz, {i 12, i 13, i 14 }) o 11 = (i 11, halmaz, {i 15, i 16, i 17 }) o 12 = (i 12, rekord, Vnév:i 18, Knév:i 19, Szsz:i 20, Fizetés:i 21, Részleg:i 8 ) OO 10.13

14 Erős egyenlőség: két objektum azonos állapotban van ha a gráfjaik minden lehetséges szempontból (pl. az OID-k minden szinten) megegyeznek. Gyenge egyenlőség: Két objektum egyenlő állapotban van ha a gráfjaik szerkezete megegyezik és a gráfban lévő atomi értékek is megegyeznek (de pl. a gráf közbenső szintjein az OID-k már nem feltétlen) OO 10.14

15 Példa objektumok összehasonlítására o 1 =(i 1, rekord, a 1 : i 4, a 2 : i 6 o 2 =(i 2, rekord, a 1 : i 5, a 2 : i 6 o 3 =(i 3, rekord, a 1 : i 4, a 2 : i 6 o 4 =(i 4, atom, 10) o 5 =(i 5, atom, 10) o 6 =(i 6, atom, 20) OO O1 és O3 között erős egyenlőség van hiszen gráfjaik teljesen megegyeznek O1 és O2 között gyenge egyenlőség van hiszen gráfjaik szerkezete és az atomi értékek benne megegyeznek, de két különböző OID (O4 ill. O5) szerepel benne ezért nincs erős egyenlőség 10.15

16 Típus konstruktorok Az Object Definition Language (ODL) foglalja magukba a korábban definiált és más típusokat létrehozó konstruktorokat. Arra használjuk, hogy az OO adatbázis séma adatszerkezetét hozzuk létre velük. OO 10.16

17 Műveletek egységbezárása Cél: absztrakt adattípusok kezelése, információ-elrejtés (szemben a tradicionális relációs modellel, ahol minden reláció összes attribútumával együtt látható a felhasználók és külső programok számára). Egy objektumtípust viselkedésének leírásával definiálunk, melyet az objektumtípushoz külső hozzáférést biztosító műveleteken alapulnak. Műveletek: objektumok létrehozása, törlése, állapotának módosítása, egyes részeihez való hozzáférés biztosítása ill. ezek kombinációi. Műveletek felépítése: interfész (szignatúra) mely a műveletek nevét és paramétereit definiálja (látható), implementáció (metódus) az objektum belső adatszerkezetét és az eléréséhez szükséges műveletek leírását tartalmazza (rejtett). Egy metódus hívása egy üzenetküldéssel történik az objektum felé, hogy hajtsa végre azt. Teljes egységbezárás: túl erős követelmény, általában az objektumok szerkezetét két részre, látható és rejtett attribútumokra osztjuk. OO 10.17

18 Műveletek egységbezárása A class kulcsszó: a típus definiálása a műveleteivel együtt. Tipikus műveletek: objektum létrehozása (create, new), objektum törlése (destroy), illetve az objektum állapotának módosítása (modify, update). A módosítás (update) műveletek egységbezárása: előnye hogy kevés integritási megszorítást kell előredefiniálni, ezeket a metódusokba lehet beleprogramozni. Így ezek a megszorítások automatikusan kikényszeríthetőek. Pontozott minősítés: objektum_név.művelet OO 10.18

19 állandóságának biztosítása Tranziens és perzisztens objektumok Általában nem minden objektumtípus lesz állandó (perzisztens) egy adatbázisban, ezt külön biztosítani kell Az állandóság biztosítása: elnevezési mechanizmussal vagy elérhetőséggel Elnevezési mechanizmus: egyértelmű és állandó nevet ad egy objektumnak, mellyel hivatkozhatunk rá külső programokból (belépési pont) Elérhetőségi mechanizmus: segitségével perzisztens objektumokból érhetünk el további objektumokat (így elég kevés számú perzisztens objektumot definiálnunk) Egy B objektum elérhető az A objektumból ha az objektum gráfban hivatkozások (élek) egy sorozata vezet A-ból B-be A MINDEN_IRODA objektum az IRODA osztály extentje, amely minden IRODA típusú objektumot perzisztenssé tesz. OO 10.19

20 Típus (osztály) hierarchia és Számos objektumot szeretnénk kezelni lehetőleg minél egyszerűbben. Ennek módja új típusok létrehozása korábbiakból. Típus: (név, attribútumok, műveletek) Függvények: attribútumok (egyedváltozók), műveletek. Attribútum: argumentum nélküli függvény TYPE_NAME: function,..., function Példa: SZEMÉLY: Név, Cím, Szül_dátum, Kor, Szsz ahol a Kor művelet, amellyel az életkort számolhatjuk ki, a többi pedig attribútum. Szubtípus (altípus): egy olyan új típus, amely egy már definiált típus összes függvényét tartamazza. Szupertípus (szülőtípus): az a típus, amelyből a szubtípust származtattuk. OO 10.20

21 Példa re Tegyük fel, hogy az alábbi új típusokat szeretnénk definiálni: DOLGOZÓ: Név, Cím, Szül_dátum, Kor, Szsz, Fizetés, Alk_kezdete, Beosztás HALLGATÓ: Név, Cím, Szül_dátum, Kor, Szsz, Szak, Tan_átlag Mivel mindkettő tartalmazza a SZEMÉLY típus összes függvényét, így annak altípusaként definiálhatóak: DOLGOZÓ subtype-of SZEMÉLY: Fizetés, Alk_kezdete, Beosztás HALLGATÓ subtype-of SZEMÉLY: Szak, Tan_átlag A DOLGOZÓ altípus tárolt attributumokként tartalmazza a Fizetés, Alk_kezdete és Beosztás attribútumokat. A HALLGATÓ altípus tárolt attribútuma a Szak, míg a Tan_átlag műveletként implementálhatjuk. Áltatában egy altípus szupertípusának összes függvényét tartalmazza azokkal a speciális függvényekkel együtt, amelyek csak erre az altípusra jellemzőek. Ez által egy típus hierarchiát generálhatunk a rendszerben definiált típusok között. OO 10.21

22 Típus (osztály) hierarchia Típus hierarchia: az összes szuper/szub típus kapcsolat rendszere Átnevezés: hierarchia révén származtatott függvények átnevezése Permanens és tranziens kollekciók Példa geometriai objektumok típus hierarchiájára GEOMETRIAI_OBJEKTUM: Alak, Terület, Ref_pont Az Alak az objektum alakját írja le (háromszög, kör stb.), a Ref_pont a síkon elfoglalt helyét, míg a Terület metódus az objektum területét számolja ki más-más módon. TÉGLALAP subtype-of GEOMETRIAI_OBJEKTUM: Szélesség, Hosszúság HÁROMSZÖG subtype-of GEOMETRIAI_OBJEKTUM: Oldal1, Oldal2, Szög KÖR subtype-of GEOMETRIAI_OBJEKTUM: Sugár OO 10.22

23 ek Ugyanolyan típusú objektumok egy kollekciója A cél az, hogy az objektumainkat állandóvá tegyük Általában az összes azonos típusú objektum szerepel a típushoz tartozó extentben Object: minden objektumot tartalmazó extent Megszorítás az extenteken, hogy legyenek kompatibilisek a típus hierarchiával, azaz az altípus extentje legyen része a szubtípus extentjének. define class IRODA_SET; type set (IRODA); operations add_iroda(d: IRODA): boolean; (új iroda hozzáadása) remove_iroda(d: IRODA): boolean; (iroda törlése) create_iroda_set: IRODA_SET; (új iroda-halmaz létrehozása) destroy_iroda_set: boolean; (iroda-halmaz megszüntetése) end IRODA_SET; persistent name MINDEN_IRODA: IRODA_SET; d:=create_iroda; (új iroda létrehozása a d változóban) b:=minden_iroda.add_iroda(d); (d perzisztenssé tétele) OO 10.23

24 Műveletek polimorfizmusa Más névvel művelet túlterhelés: ugyanaz az operátor név vagy szimbólum attól függően jelöl más és más műveletet, hogy milyen objektumra alkalmazzuk. Korai (statikus) kötés vagy késői (dinamikus) kötés Többszörös, szelektív Többszörös : akkor beszélünk róla ha egy altípus kettő vagy több típus altípusa és így értelemszerűen örökli mindkettő vagy az összes függvényét (attribútumait és metódusait). Szelektív : amikor egy altípus csak egy típus bizonyos függvényeit örökli, amelyeket nem azokat az EXPECT klózzal jelezzük OO 10.24

Adatbázisrendszerek. adatbázisokban. Objektumorientált és objektum-relációs adatbázisok április 24.

Adatbázisrendszerek. adatbázisokban. Objektumorientált és objektum-relációs adatbázisok április 24. Adatbázisrendszerek Objektum-orientáltság Objektumorientált és objektum-relációs 2018. április 24. Előadás vázlata 2 Objektumorientált Az ODMG (Object Database Management Group) szerepe Az SQL objektumorientált

Részletesebben

OOP. Alapelvek Elek Tibor

OOP. Alapelvek Elek Tibor OOP Alapelvek Elek Tibor OOP szemlélet Az OOP szemlélete szerint: a valóságot objektumok halmazaként tekintjük. Ezen objektumok egymással kapcsolatban vannak és együttműködnek. Program készítés: Absztrakciós

Részletesebben

11. előadás Objektumorientált adatbázisok haladóbb ismeretek

11. előadás Objektumorientált adatbázisok haladóbb ismeretek 11. előadás adatbázisok haladóbb Adatbázisrendszerek előadás 2016. december 5., és Debreceni Egyetem Informatikai Kar Az előadások Elmasry & Navathe: Database Systems alapján készültek. 11.1 Vázlat és

Részletesebben

Adatbázis rendszerek. dr. Siki Zoltán

Adatbázis rendszerek. dr. Siki Zoltán Adatbázis rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati személyzeti

Részletesebben

Magas szintű adatmodellek Egyed/kapcsolat modell I.

Magas szintű adatmodellek Egyed/kapcsolat modell I. Magas szintű adatmodellek Egyed/kapcsolat modell I. Ullman-Widom: Adatbázisrendszerek. Alapvetés. 4.fejezet Magas szintű adatmodellek (4.1-4.3.fej.) (köv.héten folyt.köv. 4.4-4.6.fej.) Az adatbázis modellezés

Részletesebben

Interfészek. PPT 2007/2008 tavasz.

Interfészek. PPT 2007/2008 tavasz. Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése 2 Már megismert fogalmak áttekintése Objektumorientált

Részletesebben

Adatbázis-kezelő rendszerek. dr. Siki Zoltán

Adatbázis-kezelő rendszerek. dr. Siki Zoltán Adatbázis-kezelő rendszerek I. dr. Siki Zoltán Adatbázis fogalma adatok valamely célszerűen rendezett, szisztéma szerinti tárolása Az informatika elterjedése előtt is számos adatbázis létezett pl. Vállalati

Részletesebben

Programozás. Bevezetés. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék

Programozás. Bevezetés. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék Programozás Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. február 11. Tantárgy célja, szükséges ismeretek Tantárgy célja,

Részletesebben

Már megismert fogalmak áttekintése

Már megismert fogalmak áttekintése Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése Eseménykezelési módszerek 2 Már megismert fogalmak

Részletesebben

Objektum orientált programozás Bevezetés

Objektum orientált programozás Bevezetés Objektum orientált programozás Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 03. 04. OOPALAP / 1 A program készítés Absztrakciós folyamat, amelyben a valós világban

Részletesebben

Absztrakció. Objektum orientált programozás Bevezetés. Általános Informatikai Tanszék Utolsó módosítás:

Absztrakció. Objektum orientált programozás Bevezetés. Általános Informatikai Tanszék Utolsó módosítás: Objektum orientált programozás Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 03. 04. OOPALAP / 1 A program készítés Absztrakciós folyamat, amelyben a valós világban

Részletesebben

Programozás II. 3. gyakorlat Objektum Orientáltság C++-ban

Programozás II. 3. gyakorlat Objektum Orientáltság C++-ban Programozás II. 3. gyakorlat Objektum Orientáltság C++-ban Tartalom OOP ismétlés Osztályok létrehozása Adattagok láthatóságai, elnevezési ajánlások Konstruktor, destruktor this pointer Statikus és dinamikus

Részletesebben

Célkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése

Célkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése BEVEZETÉS Célkitűzések Az Oracle10g felépítésének, használatának alapszíntű megismerése A relációs adatbázis-kezelés elméleti és gyakorlati vonatkozásainak áttekintése Az SQL, PL/SQL nyelvek használatának

Részletesebben

Programozás II. 2. gyakorlat Áttérés C-ről C++-ra

Programozás II. 2. gyakorlat Áttérés C-ről C++-ra Programozás II. 2. gyakorlat Áttérés C-ről C++-ra Tartalom Új kommentelési lehetőség Változók deklarációjának helye Alapértelmezett függvényparaméterek Névterek I/O műveletek egyszerűsödése Logikai adattípus,

Részletesebben

OOP #1 (Bevezetés) v1.0 2003.03.07. 18:39:00. Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj.

OOP #1 (Bevezetés) v1.0 2003.03.07. 18:39:00. Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj. OOP #1 (Bevezetés) v1.0 2003.03.07. 18:39:00 Eszterházy Károly Főiskola Információtechnológia tsz. Hernyák Zoltán adj. e-mail: aroan@ektf.hu web: http://aries.ektf.hu/~aroan OOP OOP_01-1 - E jegyzet másolata

Részletesebben

S0-02 Típusmodellek (Programozás elmélet)

S0-02 Típusmodellek (Programozás elmélet) S0-02 Típusmodellek (Programozás elmélet) Tartalom 1. Absztrakt adattípus 2. Adattípus specifikációja 3. Adattípus osztály 4. Paraméterátadás 5. Reprezentációs függvény 6. Öröklődés és polimorfizmus 7.

Részletesebben

Bánsághi Anna 2014 Bánsághi Anna 1 of 33

Bánsághi Anna 2014 Bánsághi Anna 1 of 33 IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 7. ELŐADÁS - ABSZTRAKT ADATTÍPUS 2014 Bánsághi Anna 1 of 33 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív

Részletesebben

Programozás módszertan p.1/46

Programozás módszertan p.1/46 Programozás módszertan Öröklődés Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA ÉS ÁLTALÁNOS TECHNIKA TANSZÉK MAGYAR TUDOMÁNYOS AKADÉMIA SZÁMÍTÁSTECHNIKAI ÉS

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 8. előadás Öröklődés - megnyitunk egy osztályt egy másik előtt zárt egységeket szeretünk készíteni (láthatósági kérdés:

Részletesebben

C++ programozási nyelv

C++ programozási nyelv C++ programozási nyelv Gyakorlat - 13. hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. december A C++ programozási nyelv Soós Sándor 1/10 Tartalomjegyzék Objektumok

Részletesebben

Java VI. Miskolci Egyetem Általános Informatikai Tanszék. Utolsó módosítás: Ficsor Lajos. Java VI.: Öröklődés JAVA6 / 1

Java VI. Miskolci Egyetem Általános Informatikai Tanszék. Utolsó módosítás: Ficsor Lajos. Java VI.: Öröklődés JAVA6 / 1 Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum

Részletesebben

1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben?

1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben? 1. Mi a fejállományok szerepe C és C++ nyelvben és hogyan használjuk őket? 2. Milyen alapvető változókat használhatunk a C és C++ nyelvben? 3. Ismertesse a névtér fogalmát! 4. Mit értünk a "változó hatóköre"

Részletesebben

és az instanceof operátor

és az instanceof operátor Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában

Részletesebben

Bevezetés: Relációs adatmodell

Bevezetés: Relációs adatmodell Bevezetés: Relációs adatmodell Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.1. Adatmodellek áttekintése 2.2. A relációs modell alapjai -- Megjegyzés:

Részletesebben

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában

Részletesebben

Bevezetés: az SQL-be

Bevezetés: az SQL-be Bevezetés: az SQL-be Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.3. Relációsémák definiálása SQL-ben, adattípusok, kulcsok megadása 02B_BevSQLsemak

Részletesebben

8. előadás. Az ER modell. Jelölések, az ER séma leképezése relációs sémára. Adatbázisrendszerek előadás november 14.

8. előadás. Az ER modell. Jelölések, az ER séma leképezése relációs sémára. Adatbázisrendszerek előadás november 14. 8. előadás Jelölések, az Adatbázisrendszerek előadás 2016. november 14., és Debreceni Egyetem Informatikai Kar Az előadások Elmasry & Navathe: Database Systems alapján készültek. 8.1 Egyedtípusok Definíció

Részletesebben

Java programozási nyelv 5. rész Osztályok III.

Java programozási nyelv 5. rész Osztályok III. Java programozási nyelv 5. rész Osztályok III. Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2005. szeptember A Java programozási nyelv Soós Sándor 1/20 Tartalomjegyzék

Részletesebben

Informatikai alapismeretek Földtudományi BSC számára

Informatikai alapismeretek Földtudományi BSC számára Informatikai alapismeretek Földtudományi BSC számára 2010-2011 Őszi félév Heizlerné Bakonyi Viktória HBV@ludens.elte.hu Titkosítás,hitelesítés Szimmetrikus DES 56 bites kulcs (kb. 1000 év) felcserél, helyettesít

Részletesebben

Programozás. Adatbázis-kezelés (alapok) Fodor Attila

Programozás. Adatbázis-kezelés (alapok) Fodor Attila Programozás Adatbázis-kezelés (alapok) Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. április 22. Bevezetés Adatbáziskezelés

Részletesebben

Programozás. Objektum Orientált Programozás (OOP) Alapfogalmak. Fodor Attila

Programozás. Objektum Orientált Programozás (OOP) Alapfogalmak. Fodor Attila Programozás Objektum Orientált Programozás (OOP) Alapfogalmak Fodor Attila Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010. február 18.

Részletesebben

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*;

Pelda öröklődésre: import java.io.*; import java.text.*; import java.util.*; import extra.*; Java osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. ( Előfeltétel 12. Tétel ) Az osztály egy olyan típus leíró struktúra, amely

Részletesebben

Objektumorientált adatbázisok

Objektumorientált adatbázisok Objektumorientált adatbázisok Az objektumorientált programozás segítségével, könnyebben, természetesebben modellezhetjük a valós világot, jobban szervezhetjük az adatainkat. Az adatbázisok világa is elmozdult

Részletesebben

GEIAL Kovács László. GEIAL Kovács László

GEIAL Kovács László. GEIAL Kovács László Adatbázisok MSc 7. téma Objektum-orientált szemantikus modellek, ORDBMS struktúra Relációs modell korlátai IFO modell: ember dolgozo lakcim név szint fizetés nyelv postai telefon relációs modell: dolgozo

Részletesebben

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 2.ELŐADÁS. Objektumorientált programozás 2015-2016

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 2.ELŐADÁS. Objektumorientált programozás 2015-2016 Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 2.ELŐADÁS 2015-2016 Objektumorientált programozás OOP PHP-ben 2 A PHP az 5.0-as verziójától megvalósítja az OO eszközrendszerét OO eszközök:

Részletesebben

Adatbázis, adatbázis-kezelő

Adatbázis, adatbázis-kezelő Adatbázisok I. rész Adatbázis, adatbázis-kezelő Adatbázis: Nagy adathalmaz Közvetlenül elérhető háttértárolón (pl. merevlemez) Jól szervezett Osztott Adatbázis-kezelő szoftver hozzáadás, lekérdezés, módosítás,

Részletesebben

Bánsághi Anna anna.bansaghi@mamikon.net. 2014 Bánsághi Anna 1 of 31

Bánsághi Anna anna.bansaghi@mamikon.net. 2014 Bánsághi Anna 1 of 31 IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 9. ELŐADÁS - OOP TERVEZÉS 2014 Bánsághi Anna 1 of 31 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív paradigma

Részletesebben

Programozási alapismeretek 4.

Programozási alapismeretek 4. Programozási alapismeretek 4. Obejktum-Orientált Programozás Kis Balázs Bevezetés I. Az OO programozási szemlélet, egy merőben más szemlélet, az összes előző szemlélettel (strukturális, moduláris, stb.)

Részletesebben

Bevezetés a Python programozási nyelvbe

Bevezetés a Python programozási nyelvbe Bevezetés a Python programozási nyelvbe 7. Gyakorlat osztályok, objektumok (utolsó módosítás 2018. aug. 28.) Szathmáry László Debreceni Egyetem Informatikai Kar 2018-2019, 1. félév OO programozás Pythonban

Részletesebben

1. Az adatbázis fogalma, fontosabb összetevÿi, felhasználási módjai

1. Az adatbázis fogalma, fontosabb összetevÿi, felhasználási módjai 4. tétel Az egyed-kapcsolat modell 1. Az adatbázis fogalma, fontosabb összetevÿi, felhasználási módjai 1.1. Adatbáziskezelÿ rendszer (DBMS - DataBase Management System) A DBMS komplex SW-HW rendszer, mely

Részletesebben

Struktúra nélküli adatszerkezetek

Struktúra nélküli adatszerkezetek Struktúra nélküli adatszerkezetek Homogén adatszerkezetek (minden adatelem azonos típusú) osztályozása Struktúra nélküli (Nincs kapcsolat az adatelemek között.) Halmaz Multihalmaz Asszociatív 20:24 1 A

Részletesebben

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai SQL ALAPOK Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai BEVEZETÉS SQL: Structured Query Language Strukturált Lekérdező Nyelv Szabvány határozza meg, azonban számos nyelvjárása létezik

Részletesebben

Programozás III. - NGB_IN001_3

Programozás III. - NGB_IN001_3 Programozás III. - az objektumorientált programozásba Varjasi Norbert Széchenyi István Egyetem Informatika Tanszék Programozás III. - 1. el adás institution-log Tartalom 1 El adások és gyakorlatok Zárthelyi

Részletesebben

Objektum relációs lehetőségek az Oracle-ben. Katona Endre Adatbázis alapú rendszerek diasorozata alapján

Objektum relációs lehetőségek az Oracle-ben. Katona Endre Adatbázis alapú rendszerek diasorozata alapján Objektum relációs lehetőségek az Oracle-ben Katona Endre Adatbázis alapú rendszerek diasorozata alapján Az objektum-relációs adatmodell ODL, OQL: az objektum-orientált világba átemel SQL elemeket. Itt

Részletesebben

A hierarchikus adatbázis struktúra jellemzői

A hierarchikus adatbázis struktúra jellemzői A hierarchikus adatbázis struktúra jellemzői Az első adatbázis-kezelő rendszerek a hierarchikus modellen alapultak. Ennek az volt a magyarázata, hogy az élet sok területén első közelítésben elég jól lehet

Részletesebben

Bevezetés: Relációs adatmodell

Bevezetés: Relációs adatmodell Bevezetés: Relációs adatmodell Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 2.1. Adatmodellek áttekintése 2.2. A relációs modell alapjai --Megjegyzés:

Részletesebben

Interfészek. Programozás II. előadás. Szénási Sándor.

Interfészek. Programozás II. előadás.  Szénási Sándor. Interfészek előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Polimorfizmus áttekintése Interfészek Interfészek alkalmazása

Részletesebben

OOP alapok Egy OOP nyelvet három fontos dolog jellemez. egységbezárás ( encapsulation objektumoknak öröklés ( inheritance

OOP alapok Egy OOP nyelvet három fontos dolog jellemez. egységbezárás ( encapsulation objektumoknak öröklés ( inheritance Az objektum-orientált programozás (röviden OOP) a természetes gondolkodást, cselekvést közelítő programozási mód, amely a programozási nyelvek tervezésének természetes fejlődése következtében alakult ki.

Részletesebben

modell, amiben csak bináris sok-egy kapcsolatok (link, memberowner,

modell, amiben csak bináris sok-egy kapcsolatok (link, memberowner, Informatika szigorlat 10-es tétel: Adatmodellezés Adatmodellezésnek azt az absztrakciós folyamatot nevezzük, amelyben a valós (mikró)világ tényeit, valamint a tények közötti kapcsolatokat tükröző adatokat,

Részletesebben

Bevezetés a C++ programozási nyelvbe

Bevezetés a C++ programozási nyelvbe Bevezetés a C++ programozási nyelvbe Miskolci Egyetem Általános Informatikai Tanszék CPP0 / 1 Története A C++ programozási nyelv a C programozási nyelv objektum orientált kiterjesztése. Az ANSI-C nyelvet

Részletesebben

Adatszerkezetek 2. Dr. Iványi Péter

Adatszerkezetek 2. Dr. Iványi Péter Adatszerkezetek 2. Dr. Iványi Péter 1 Hash tábla A bináris fáknál O(log n) a legjobb eset a keresésre. Ha valamilyen közvetlen címzést használunk, akkor akár O(1) is elérhető. A hash tábla a tömb általánosításaként

Részletesebben

Programozási nyelvek Java

Programozási nyelvek Java statikus programszerkezet Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 2. előadás csomag könyvtárak könyvtárak forrásfájlok bájtkódok (.java) (.class) primitív osztály

Részletesebben

ADATBÁZIS-KEZELÉS. Relációs modell

ADATBÁZIS-KEZELÉS. Relációs modell ADATBÁZIS-KEZELÉS Relációs modell Relációséma neve attribútumok ORSZÁGOK Azon Ország Terület Lakosság Főváros Földrész 131 Magyarország 93036 10041000 Budapest Európa 3 Algéria 2381740 33769669 Algír Afrika

Részletesebben

Adatmodellezés. 1. Fogalmi modell

Adatmodellezés. 1. Fogalmi modell Adatmodellezés MODELL: a bonyolult (és időben változó) valóság leegyszerűsített mása, egy adott vizsgálat céljából. A modellben többnyire a vizsgálat szempontjából releváns jellemzőket (tulajdonságokat)

Részletesebben

XML alapú adatbázis-kezelés. (Katona Endre diái alapján)

XML alapú adatbázis-kezelés. (Katona Endre diái alapján) XML alapú adatbázis-kezelés Adatstruktúrák: Digitális kép, hang: teljesen strukturálatlan A web (linkek): részben strukturált Relációs: teljesen strukturált Motiváció: (Katona Endre diái alapján) Ismeretlen

Részletesebben

Egyirányban láncolt lista

Egyirányban láncolt lista Egyirányban láncolt lista A tárhely (listaelem) az adatelem értékén kívül egy mutatót tartalmaz, amely a következő listaelem címét tartalmazza. A láncolt lista első elemének címét egy, a láncszerkezeten

Részletesebben

ADATBÁZISOK ELMÉLETE 5. ELŐADÁS 3/22. Az F formula: ahol A, B attribútumok, c érték (konstans), θ {<, >, =,,, } Példa:

ADATBÁZISOK ELMÉLETE 5. ELŐADÁS 3/22. Az F formula: ahol A, B attribútumok, c érték (konstans), θ {<, >, =,,, } Példa: Adatbázisok elmélete 5. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE

Részletesebben

C++ programozási nyelv Konstruktorok-destruktorok

C++ programozási nyelv Konstruktorok-destruktorok C++ programozási nyelv Konstruktorok-destruktorok Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. szeptember A C++ programozási nyelv Soós Sándor 1/20 Tartalomjegyzék

Részletesebben

Osztályok. construct () destruct() $b=new Book(); $b=null; unset ($b); book.php: <?php class Book { private $isbn; public $title;

Osztályok. construct () destruct() $b=new Book(); $b=null; unset ($b); book.php: <?php class Book { private $isbn; public $title; PHP5 objektumok 1 Osztályok class, new book.php: construct () destruct() $b=new Book(); törlés: $b=null; vagy unset ($b); -elnevezési konvenciók private $isbn; public $title; function

Részletesebben

INFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP-4.1.2-08/1/A-2009-0010

INFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP-4.1.2-08/1/A-2009-0010 INFORMATIKA ÁGAZATI ALKALMAZÁSAI Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP-4.1.2-08/1/A-2009-0010 2. Adatbáziskezelés eszközei Adatbáziskezelés feladata Adatmodell típusai Relációs adatmodell

Részletesebben

Adatbázisok I 2012.05.11. Adatmodellek komponensei. Adatbázis modellek típusai. Adatbázisrendszer-specifikus tervezés

Adatbázisok I 2012.05.11. Adatmodellek komponensei. Adatbázis modellek típusai. Adatbázisrendszer-specifikus tervezés Adatbázisok I Szemantikai adatmodellek Szendrői Etelka PTE-PMMK Rendszer és Szoftvertechnológiai Tanszék szendroi@pmmk.pte.hu Adatmodellek komponensei Adatmodell: matematikai formalizmus, mely a valóság

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 2. rész Öröklés és többalakúság Nemvirtuális metódusok, elrejtés Virtuális metódusok, elrejtés Típuskényszerítés, az is és as operátorok Absztrakt osztályok, absztrakt

Részletesebben

Osztályok. 4. gyakorlat

Osztályok. 4. gyakorlat Osztályok 4. gyakorlat Az osztály fogalma Az objektumok formai leírása, melyek azonos tulajdonsággal és operációkkal rendelkeznek. Osztályból objektum készítését példányosításnak nevezzük. Minden objektum

Részletesebben

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07.

Java VI. Egy kis kitérő: az UML. Osztály diagram. Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI. Öröklődés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 03. 07. Java VI.: Öröklődés JAVA6 / 1 Egy kis kitérő: az UML UML: Unified Modelling Language Grafikus eszköz objektum

Részletesebben

FUNKCIONÁLIS PROGRAMOZÁS

FUNKCIONÁLIS PROGRAMOZÁS FUNKCIONÁLIS PROGRAMOZÁS A funkcionális programozás néhány jellemzője Funkcionális programozás 1-2 Funkcionális, más néven applikatív programozás Funkcionális = függvényalapú, függvényközpontú Applikatív

Részletesebben

5. Gyakorlat. 5.1 Hálós adatbázis modell műveleti része. NDQL, hálós lekérdező nyelv:

5. Gyakorlat. 5.1 Hálós adatbázis modell műveleti része. NDQL, hálós lekérdező nyelv: 5. Gyakorlat 5.1 Hálós adatbázis modell műveleti része NDQL, hálós lekérdező nyelv: A lekérdezés navigációs jellegű, vagyis a lekérdezés megfogalmazása során azt kell meghatározni, hogy milyen irányban

Részletesebben

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

Adatbázis-lekérdezés. Az SQL nyelv. Makány György Adatbázis-lekérdezés Az SQL nyelv Makány György SQL (Structured Query Language=struktúrált lekérdező nyelv): relációs adatbázisok adatainak visszakeresésére, frissítésére, kezelésére szolgáló nyelv. Születési

Részletesebben

Java. Perzisztencia. ANTAL Margit. Java Persistence API. Object Relational Mapping. Perzisztencia. Entity components. ANTAL Margit.

Java. Perzisztencia. ANTAL Margit. Java Persistence API. Object Relational Mapping. Perzisztencia. Entity components. ANTAL Margit. Sapientia - EMTE 2008 Az előadás célja JPA - - perzisztencia ORM - - Objektumrelációs leképzés - Entitásbabok Állandóság Mechanizmus amely során az alkalmazás adatai megőrzésre kerülnek valamely perzisztens

Részletesebben

Adatbázisok - 1. előadás

Adatbázisok - 1. előadás Óbudai Egyetem Alba Regia Műszaki Kar (AMK) Székesfehérvár 2015. október 15. Köszönet A tárgyat korábban Kottyán László tanította. Köszönöm neki, hogy az általa elkészített

Részletesebben

Objektumelvű programozás

Objektumelvű programozás Objektum, osztály Objektumelvű programozás Az elemzés együttműködő objektumok rendszereként fogalmazza meg a feladatot. Objektum-központú elemzés A tervezés a feladat tárgyköreit egy-egy objektum felelősségévé

Részletesebben

Többfelhasználós és internetes térkép kezelés, megjelenítés

Többfelhasználós és internetes térkép kezelés, megjelenítés Többfelhasználós és internetes térkép kezelés, megjelenítés Többfelhasználós környezetek Egyszerű fájlszerveres megoldás, LAN (Novel, Windows hálózat) Egy fájl egyidejű módosítása több helyről nem lehetséges

Részletesebben

1. előadás Alapfogalmak Kialakulás, modellezés, a Bachman-féle fogalomrendszer, adatmodell, adatbázis, tulajdonságok

1. előadás Alapfogalmak Kialakulás, modellezés, a Bachman-féle fogalomrendszer, adatmodell, adatbázis, tulajdonságok 1. előadás Kialakulás, modellezés, a Bachman-féle, adatmodell,, tulajdonságok Adatbázisrendszerek előadás 2017. szeptember 11., és Debreceni Egyetem Informatikai Kar Az előadások Elmasry & Navathe: Database

Részletesebben

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu Számonkérés 2 Papíros (90 perces) zh az utolsó gyakorlaton. Segédanyag nem használható Tematika 1. félév 3 Óra Dátum Gyakorlat 1. 2010.09.28.

Részletesebben

ADATBÁZIS-KEZELÉS. Adatbázis-kezelő rendszerek

ADATBÁZIS-KEZELÉS. Adatbázis-kezelő rendszerek ADATBÁZIS-KEZELÉS Adatbázis-kezelő rendszerek Adat (Data) Észlelhető, felfogható ismeret Jelsorozat Tény, közlés Valakinek vagy valaminek a jellemzője Adatbázis (Data Base, DB) Hosszú ideig évekig meglévő

Részletesebben

Oracle Spatial. Térbeli adatot tartalmazó tábla: Geometry table Legalább 2 oszlopa van: Elsődleges kulcs, SDO_GEOMETRY típusú oszlop.

Oracle Spatial. Térbeli adatot tartalmazó tábla: Geometry table Legalább 2 oszlopa van: Elsődleges kulcs, SDO_GEOMETRY típusú oszlop. Oracle Spatial Az Oracle adatbázis-kezelő rendszer Oracle Spatial (Oracle Locator) nevű kiegészítő modulja támogatja a térbeli adatok kezelését. Térbeli adatot tartalmazó tábla: Geometry table Legalább

Részletesebben

Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem

Debreceni Egyetem Matematikai és Informatikai Intézet. 13. Védelem 13. Védelem A védelem célja Védelmi tartományok Hozzáférési mátrixok (access matrix, AM) A hozzáférési mátrixok implementációja A hozzáférési jogok visszavonása Képesség-alapú rendszerek Nyelvbe ágyazott

Részletesebben

Az adatbázisrendszerek világa

Az adatbázisrendszerek világa Az adatbázisrendszerek világa Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 1.1. Az adatbázisrendszerek fejlődése 1.2. Az adatbázis-kezelő rendszerek áttekintése

Részletesebben

SQL. 1.rész. 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1

SQL. 1.rész. 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1 SQL 1.rész 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1 SQL története, szabványok Szabvány adatbázis-kezelő nyelv: SQL SQL (angol kiejtésben

Részletesebben

Visual C++ osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés.

Visual C++ osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. Visual C++ osztály készítése, adattagok, és metódusok, láthatóság, konstruktor, destruktor. Objektum létrehozása, használata, öröklés. Az osztály egy olyan típus leíró struktúra, amely tartalmaz adattagokat

Részletesebben

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás

Számítástechnika II. BMEKOKAA Előadás. Dr. Bécsi Tamás Számítástechnika II. BMEKOKAA153 2. Előadás Dr. Bécsi Tamás Tömbök (Arrays) Definíció: típus[] név; (pld. int[] szamok; ) Inicializálás: int[] szamok = new int[4]; int[] szamok = 1,2,4,3,5}; int[] szamok

Részletesebben

Objektumorientált paradigma és a programfejlesztés

Objektumorientált paradigma és a programfejlesztés Objektumorientált paradigma és a programfejlesztés Vámossy Zoltán vamossy.zoltan@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Ficsor Lajos (Miskolci Egyetem) prezentációja alapján Objektumorientált

Részletesebben

Adatbázis rendszerek 6.. 6. 1.1. Definíciók:

Adatbázis rendszerek 6.. 6. 1.1. Definíciók: Adatbázis Rendszerek Budapesti Műszaki és Gazdaságtudományi Egyetem Fotogrammetria és Térinformatika 6.1. Egyed relációs modell lényegi jellemzői 6.2. Egyed relációs ábrázolás 6.3. Az egyedtípus 6.4. A

Részletesebben

Adatbáziskezelő-szerver. Relációs adatbázis-kezelők SQL. Házi feladat. Relációs adatszerkezet

Adatbáziskezelő-szerver. Relációs adatbázis-kezelők SQL. Házi feladat. Relációs adatszerkezet 1 2 Adatbáziskezelő-szerver Általában dedikált szerver Optimalizált háttértár konfiguráció Csak OS + adatbázis-kezelő szoftver Teljes memória az adatbázisoké Fő funkciók: Adatok rendezett tárolása a háttértárolón

Részletesebben

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu

Széchenyi István Egyetem. Programozás III. Varjasi Norbert varjasin@sze.hu Programozás III. Varjasi Norbert varjasin@sze.hu 1 A java virtuális gép (JVM) Képzeletbei, ideális számítógép. Szoftveresen megvalósított működési környezet. (az op. rendszer egy folyamata). Feladata:

Részletesebben

Adatbázisok elmélete 4. előadás

Adatbázisok elmélete 4. előadás Adatbázisok elmélete 4. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE

Részletesebben

Adatbázismodellek. 1. ábra Hierarchikus modell

Adatbázismodellek. 1. ábra Hierarchikus modell Eddig az adatbázisokkal általános szempontból foglalkoztunk: mire valók, milyen elemekből épülnek fel. Ennek során tisztáztuk, hogy létezik az adatbázis fogalmi modellje (adatbázisterv), amely az egyedek,

Részletesebben

Programozás II. 2. Dr. Iványi Péter

Programozás II. 2. Dr. Iványi Péter Programozás II. 2. Dr. Iványi Péter 1 C++ Bjarne Stroustrup, Bell Laboratórium Első implementáció, 1983 Kezdetben csak precompiler volt C++ konstrukciót C-re fordította A kiterjesztés alapján ismerte fel:.cpp.cc.c

Részletesebben

Szoftver-technológia II. Modulok és OOP. Irodalom

Szoftver-technológia II. Modulok és OOP. Irodalom Modulok és OOP Irodalom Steven R. Schach: Object Oriented & Classical Software Engineering, McGRAW-HILL, 6th edition, 2005, chapter 7. 2 Modulok és objektumok Modulok Lexikálisan folytonos utasítás sorozatok,

Részletesebben

Adatbázisrendszerek 7. előadás: Az ER modell március 20.

Adatbázisrendszerek 7. előadás: Az ER modell március 20. Adatbázisrendszerek Jelölések, az 2018. március 20. Egyedtípusok 2 Definíció Azokat az egyedtípusokat, amelyek nem rendelkeznek saját kulcsattribútumokkal, gyenge egyedtípusoknak nevezzük. Ezzel ellentétben

Részletesebben

Objektum orientált software fejlesztés (Bevezetés)

Objektum orientált software fejlesztés (Bevezetés) Objektum orientált software fejlesztés (Bevezetés) Lajos Miskolci Egyetem Általános Informatikai Tanszék Út az objektum orientált szemléletig 1. Klasszikus módszerek: program = adatszerkezetek + algoritmusok

Részletesebben

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei 1. Mi az elsődleges következménye a gyenge logikai redundanciának? inkonzisztencia veszélye felesleges tárfoglalás feltételes függés 2. Az olyan tulajdonság az egyeden belül, amelynek bármely előfordulása

Részletesebben

Adatmodellezés, alapfogalmak. Vassányi István

Adatmodellezés, alapfogalmak. Vassányi István Adatmodellezés, alapfogalmak Vassányi István Alapok A helyes modell az információs rendszer későbbi használhatóságánakazalapja, olyanmint a jómunkaruha: véd, de nem akadályozza a munkát Objektum-orientált

Részletesebben

Objektum orientált kiterjesztés A+ programozási nyelvhez

Objektum orientált kiterjesztés A+ programozási nyelvhez Szegedi Tudományegyetem Informatikai Tanszékcsoport Objektum orientált kiterjesztés A+ programozási nyelvhez Diplomamunka terve Készítette: Bátori Csaba programtervező matematikus hallgató Témavezető:

Részletesebben

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17 Adatbázisok 8. gyakorlat SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT 2015. október 26. 2015. október 26. Adatbázisok 1 / 17 SQL nyelv Structured Query Language Struktúrált lekérdez

Részletesebben

Szerializáció. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Szerializáció / 22

Szerializáció. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Szerializáció / 22 Szerializáció Tóth Zsolt Miskolci Egyetem 2014 Tóth Zsolt (Miskolci Egyetem) Szerializáció 2014 1 / 22 Tartalomjegyzék 1 Szerializációs Alapfogalmak 2 Szerializációs Megoldások Object Szerializáció XML

Részletesebben

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai 8. gyakorlat Structured Query Language Struktúrált lekérdező nyelv A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai DDL (Data Definition Language) adatstruktúra definiáló

Részletesebben

DCOM Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Ficsor Lajos DCOM /1

DCOM Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Ficsor Lajos DCOM /1 DCOM Áttekintés Miskolci Egyetem Általános Informatikai Tanszék DCOM /1 Mi a DCOM? DCOM: Distributed Component Object Model A Microsoft osztott objektum modellje Bináris együttmÿködési szabvány és annak

Részletesebben

Bevezetés a Programozásba II 5. előadás. Objektumorientált programozás és tervezés

Bevezetés a Programozásba II 5. előadás. Objektumorientált programozás és tervezés Pázmány Péter Katolikus Egyetem Információs Technológiai és Bionikai Kar Bevezetés a Programozásba II 5. előadás Objektumorientált programozás és tervezés 2014.03.10. Giachetta Roberto groberto@inf.elte.hu

Részletesebben

CORBA Áttekintés. Mi a CORBA? OMG and OMA. Ficsor Lajos. Miskolci Egyetem Általános Informatikai Tanszék

CORBA Áttekintés. Mi a CORBA? OMG and OMA. Ficsor Lajos. Miskolci Egyetem Általános Informatikai Tanszék CORBA Áttekintés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2007. 10. 15. Mi a CORBA? osztott objektum modell szabvány, amely definiálja a komponensek közötti interface-eket definiál

Részletesebben