Németország Düsseldorf MUNKANAPLÓ. Mobilitási projekt HU01 - KA Készítette: Bodonyi Bence

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

Download "Németország Düsseldorf 2015.06.14-07.04. MUNKANAPLÓ. Mobilitási projekt 2014-1 - HU01 - KA102-000338. Készítette: Bodonyi Bence"

Átírás

1 Németország Düsseldorf MUNKANAPLÓ Mobilitási projekt HU01 - KA Készítette: Bodonyi Bence

2 A szeminárium tananyaga (The seminar curriculum) 1. Bevezetés (Introduction) - jún A szeminárium tananyag (The seminar curriculum) 2. A nyelv rövid története (A brief history of the language) 2. C++ programok készítése (Beginning with C++) - jún Alapvető szabályok (Basic Rules) 2. Fordítás, futtatás (Translation, run) 3. C++ program felépítése (Structure C ++ program) 3. Alaptípusok, változók és konstansok (Basic types, variables and constants) - jún C++ adatok csoportosítása C ++ Data Grouping 2. Változók definiálása (Define Variables) 3. Adattípusok áttekintése (Overview of Data Types) 4. Konstansok (Constants) 4. Alapműveletek és kifejezések (Basic Operations and Expressions - jún Operátorok csoportosítása (Operators Grouping 2. Műveleti sorrend (precedence) 3. Matematikai kifejezések (Mathematical expressions) 4. Értékadás (Assignment) 5. Logikai műveletek (Logical Operations) 5. Vezérlő utasítások (iteration, sequence, selection - jún Kivételkezelés (Exception Handling) - jún Kivételek kiváltása (Exceptions replacement) 2. Kivételek szűrése (Exceptions Filters) 7. Konzol kezelése (Managing Console I/O Operations) - jún Tömbök és stringek (arrays and strings) - jún Egy dimenziós tömb (1 -dimensional array) 2. n-dimenziós tömb(1 -dimensional array) 3. Sztringek (strings) 9. Felhasználói típusok (User Types) - jún Struktúra (struvture) 2. A class osztálytípus (class) 10. Függvények (Functions) - jún Függvény definíciója, hívása, deklarációja (Function definition, Call, Declaration 2. Függvény visszatérési értéke (Function returns) 11. Függvényekről magasabb szinten (function at a higher level - jún Beágyazott függvények (Embedded Functions) 2. Függvények átdefiniálása (Functions remapping) 12. Bevezetés az objektum orientált világba (OOSD Object Oriented Software Development) - jún Alapelemek (Basic Elements) 2. Alapvető elvek (Basic Principles) 13. Osztályok és objektumok (Classes and Objects) júl.01.

3 3. Adatok és műveletek(data&finctions) 4. Konstruktorok (Constructors) 5. Destruktor (Destructors) 14. Öröklés és polimorfizmus (Succession & Polymorphism - júl Osztályok származtatása (Deriving Classes) 2. Osztályok elérése (Accessing Classes) 3. Virtuális alaposztályok (Virtual Functions) 15. Fájlkezelés (Working with Files) - júl.03. Látogatásaink Uni Düsseldorf, Zentrum für informations- und Medientechnologie, Universitetätstraße 1, Düsseldorf IT living Gmbh, Flurstraße 57. Düsseldorf Mercedes Benz Werk Düsseldorf lektropower Gmbh Elektronikgeschäft Korthover Essen Fachhochschule Düsseldorf, Campus Derendorf Ratherstr. 24a, Düsseldorf meglátogatása IT On.net Gmbh Wiesenstraße 21 Düsseldorf Secusmart Gmbh, Heinrichstraße 155 Düsseldorf

4 Megérkezés Düsseldorfba :30 17:00 Servet tanár úr örömmel fogadott bennünket. Mindannyian bemutatkoztunk, majd ismertette velünk a gyakorlat menetét. Örömmel hallgattam, hogy a kitűzött tananyag egy részét már az iskolában is megtanultuk. Remélem ez majd segít a megértésben :30 12:00 A Secumart céget látogattuk ma meg. Mobil és vezetékes telefonok lehallgatásának biztonságát biztosító rendszer fejlesztésével foglalkozik immáron 7 éve. Olyan mértékű fejlődésen ment keresztül e röpke 7 év alatt, hogy 70-re duzzadt alkalmazottainak a száma, akik között minden nemzet képviselteti magát. A cég bemutatása után végigvezettek bennünket a fejlesztői szinten, ahol számos munkatárssal találkoztunk, az egyik a beérkező levelekkel foglalkozott, többen szoftverfejlesztésen dolgoztak. A cég kutyusát is megsimogathattuk. A körbevezetés után a nemzetközi kapcsolatokért felelős ügyvezető tartott ízelítőt munkájáról. A cég termékének eladása ügyében sokat kell utaznia, megfelelően kell előkészítenie előadását, s nem utolsó sorban az érintettek érdeklődését kell felkeltenie a termék iránt. Terméküket a szövetségi hivatal is megvásárolta :00 17: :30 17: :30 12: :00 17:00 Írtunk egy rövid programot: #include <iostream> using namespace std; int main() cout << "Hello Erasmus+" << endl; return 0; A változók típusa lehet egyszerű és összetett, a C++ egyszerű típusai: int (long,short, insigned long,unsigned short),double,char,boolean,enum. A változó deklarálása a típusának és nevének megadásával történik Ma az IT On.net Gmbh céget látogattuk meg. A cég képviselője egy inteligens házat mutatot be nekük, ők ugyanis ezek tervezésével foglalkoznak. Az intelligens épület olyan épület, amely automatikusan, azaz emberi beavatkozás nélkül, vagy csak minimálisan szükséges emberi beavatkozással képes ellátni feladatait. Például a fűtés, riasztüberendezés, média, Iphone... Az új építésű házak beszerelését ajánlják, meg tejlesen új kábelezést azlalmaz ez a technológia. A kábeleken 30 V feszültség hald át. Az operátorokat több szempont alapján lehet csoportosítani. A csoportosítást elvégezhetjük az operandusok száma

5 szerint:egyoperandusú (unary) két operandusú (binary) operátorok. Egyoperandusú például n++;--n;-n; kétoperandusú például n1+n2; n2; :30 12: :00 17: :30 12: :00 17: :30 17: :30 12:00 A C++ program vezérlő utasításokból épül fel. Ezekről esett szó a mai gyakorlaton. Megbeszéltük a szekvencia, az iteráció és a szelekció jelentőségét, kódolását. A mai gyakorlaton a kivételkezelésről esett szó. Megtudtuk, hogy kivételnek (exception) nevezzük azt a hibás állapotot vagy eseményt, melynek bekövetkezte esetén az alkalmazás további, szabályszerű futása már nem lehetséges. Ellátogattunk a düsseldorfi egyetemre, ahol a dékán fogadott bennünket. Először bemutatkozott, majd bemutatta az egyetemet. Ismertette velünk a szervezeti felépítést, majd 3 csoportra osztottak bennünket. Az én csoportom elsőként a biztonsági rendszert tekintette meg, majd a hálózati rendszer ill. a kommunikációs rendszer követkekezett. Érdekes volt látni az épületek kábelrendszerét, ill. szerverszoba biztonsági berendezését. Ma különböző típusú adatokat juttattunk a be a számítógépbe, s írattuk ki a képernyőre. Előfordultak mindazon típusok, melyeket az iskolában is használtunk. Kiírattuk a memória területüket is. Ebből egyértelműsödött számomra, miért is fontos a pontos típus megadás. Ma a tömb típusú változókról tanultunk.a tömb több azonos típusú elemből áll. A tömb elemekre egy sorszám (index) segítségével hivatkozhatunk. Léteznek statikus és dinamikus tömbök. Statikus tömb esetén a tömbben nem lehet a maximális elemszámtól több elemet tárolni. Dinamikus tömbből létezik változó méretű tömb, amelynél nem csak konstanssal adhatjuk meg a tömb elemszámát, hanem egy változó segítségével is, valamint létezik dinamikus tömb, amely képes szükség szerint növelni a helyfoglalását A szakmai partnerünket látogattuk ma meg. Nem düsseldorfi kirendeltségű a cég, ezért Essenbe utaztunk, hogy a cég vezetőjével találkozhassunk. Bemutatkozás után elmesélte nekünk a cég történetét, megtudhattuk azt, hogy egy internet kávézóból átalakult elektrotechnikai cég egyik boltjában tartózkodunk, amely hatalmas lehetőségeket aknáz ki a világháló segítségével, hisz elektrotechnikai cikkeit és szolgáltatásait elektronikus úton adja el, szerzi be. Forgalmaznak a világ minden területére. Megtudhattuk azt, hogy milyen szempontokat kell betartania egy e- kereskedőnek ahhoz, hogy vállalkozását fenntarthassa.

6 :00 17:00 A mai szakmai gyakorlati napon ismét az összetett adatszerkezetekkel foglalkoztunk. A múlt órán megismert tömb típus is előkerült a rekord típus tárgyalása során. A rekord mezőkből épül fel, melyek mindegyike különböző típusú is lehet. A mezők típusa általában valamilyen egyszerű típus (int, double, stb.), de semmi akadálya annak, hogy a rekord valamely mezője pl. tömb típusú legyen. A mezőknek egyedi nevük van. Ez a típus a felhasználó által létrehozott típus, amit a későbbiek során adatok deklerálásánal alkalmazunk. A struct kulcsszóval vezettük be, s két kapcsos zárójelben adjuk meg a mezőket név és típus megadásával :30 12: :30 12: :00 17: :30 17:00 A függvényekről tanultunk. A C++ program főfüggvénye a main függvény, de számos függvényt hozhatunk létre, melynek deklarációját bárhol megadhatjuk. típus név ( paraméter1, paraméter2,...) törzs típus: a függvény visszatérési értékének a típusa név: ez a függvény elnevezése lesz, azaz így lehet meghívni. paraméter1, paraméret2,... (amennyi csak szükséges): minden paraméter tartalmaz egy alapvető típust Nagy hatással volt rám a mai gyakorlati nap. Délelőtt ugyanis a Mercedes gyárban jártunk. A cég bemutatása után 2 egységükön kalauzoltak végig bennünket. Tilos volt az üzemekben a fényképezés. Megtudtuk, hogy 6546 dolgozója van a cégnek, csak Düsseldorfban, de Stutgardban és Ludwigsfelde-ben is van kirendeltségük országon belül. Ezen kívül Spnyolország Victoria - ban és USA Charlestonban is van gyára a cégnek. A legnagyobb az, ahol mi jártunk. " üzeységet nézhettünk meg, egyikben műszakonkét 300 dolgozó és 500 robot végzi munkáját. Minden számítógéppel vezérelt. Lenyűgözött az a pontosság, ahogy a robotok végzik a feladatukat. 600 Sprinter készül el naponta. Elmesélték nekünk, hogy csak mgrendelésre gyártanak. Minden, a futószalagról lekerült gépjárműnek már van gazdája. Számos ellenőrző ponton keresik a hibát, természetesen számítógépekkel, hogy véletlenül se kerüljön ki hibás jármű a gyárból. Ma megismerkedtk az objektum-orientált témakör alapelemeivel. Ezek közé tartozik az osztály, objektum, példány, metódus. E néhány fogalom elég közel áll hozzánk, hisz a körülöttünk lévő dolgok és kapcsolatok leírása a cél. Megfogalmaztuk és elmélyítettük az objektum-orientált programozás elveit, melyek a bezárás, öröklés, polimorfizmus és az absztrakció. Az osztály és objektum fogalmakat vettük át bővebben. A C++ kétéle leheőséget nyújt a számunkra. A struct és a class szóval vezethetjük be. Mindkettő adattagokból és tagfüggvényekből épül fel.

7 Különbség köztük az, hogy a struct típusnál minden adattag nyilvános, míg a class típusnál lehet privát és publikus.a köv. osztályt alkottuk meg ma: class Alkalmazott private: int torzsszam; string nev; int ber; public: void BertEmel(int szaz) ber *= (1 + szaz/100); void Bevitel(int tsz, string n, int b) torzsszam = tsz; nev = n; ber = b; int Ber() const return ber; ; :30 17: :30 12:00 A konstruktorokról és destrukturokról tanultunk ma. Érdekes téma, erről még az iskolában nem volt szó. Az osztályokat mi magunk hozzuk létre sztatikus és dinamikus helyfoglalással, de a programkörnyezet megengedi, hogy a fordító készítsen ideiglenes példányokat. Ezt a konstruktorok alkalmazásával tehetjük meg. Ez nem más, mint egy tagfüggvény, amit a deklarációban adhatunk meg. A destruktorok pedig megszüntetik ezt az ideiglene helyfoglalást. Ma egy 1965-ben alapított egyetem infomatika karát látogattuk meg.a teljes címe: Uni Düsseldorf, Zentrum für informations- und Medientechnologie, Universitetätstraße 1, Düsseldorf Az egyetem egyike a legfiatalabb egyetemeknek, s öt karral működik. Hatalmas könyvtára, botanikus kertje, amit mi már meglátogattunk és szerverszobája van. Ezt látogattuk ma meg a ZIM épületében található. Bent nem szabadott fényképezni, de kérdéseket tehettünk fel. Hatalmas adatforgalmat bonyolít le. Tartalmazza a világ 3. legnagyobb szerverét is.

8 Számos részét bérlik és mások működtetik. 3 évente újátják fel, hogy a legújabb technológiávaltudják tudják működtetni :00 17: :30 17:00 Ma beszélgettünk a polimorfizmus és öröklés fajtáiról, majd a fájlkezelés következett. Fájlból már olvastunk be a gyakorlati órán az iskolában, így ezek az ismeretek most jól jöttek. Könnyen megértettem miről van szó, s könnyen alkalmazni is tudtam. A gyakorlat során hoztunk létre fájlokat egyszerű szövegszerkesztővel, majd a fájlból beolvastuk az adatokat. Ügyelni kellett a fájl elérési útjának helyes megadására, sőt ellenőriztük is a megnyitás helyességét, majd egy while-os ciklus segítségével beolvastuk az adatokat, melyekkel azután dolgoztunk, s a végén még fájlba ki is írtuk az eredményeket. Örültem annak, hogy sikerül a feladatot a mi csoportunknak megoldani. A projekt lezárásan napja. Megbeszéltük, hogy mit tanultunk, felelevenítettük, hogy hol jártunk, kicseréltük tapasztalatainkat. Befejeztem a naplót.

9 Németország Düsseldorf MUNKANAPLÓ Mobilitási projekt HU01 - KA Készítette: Szabó Dániel

10 A szeminárium tananyaga (The seminar curriculum) 1. Bevezetés (Introduction) - jún A szeminárium tananyag (The seminar curriculum) 4. A nyelv rövid története (A brief history of the language) 2. C++ programok készítése (Beginning with C++) - jún Alapvető szabályok (Basic Rules) 2. Fordítás, futtatás (Translation, run) 3. C++ program felépítése (Structure C ++ program) 3. Alaptípusok, változók és konstansok (Basic types, variables and constants) - jún C++ adatok csoportosítása C ++ Data Grouping 2. Változók definiálása (Define Variables) 3. Adattípusok áttekintése (Overview of Data Types) 4. Konstansok (Constants) 4. Alapműveletek és kifejezések (Basic Operations and Expressions - jún Operátorok csoportosítása (Operators Grouping 2. Műveleti sorrend (precedence) 3. Matematikai kifejezések (Mathematical expressions) 4. Értékadás (Assignment) 5. Logikai műveletek (Logical Operations) 5. Vezérlő utasítások (iteration, sequence, selection - jún Kivételkezelés (Exception Handling) - jún Kivételek kiváltása (Exceptions replacement) 2. Kivételek szűrése (Exceptions Filters) 7. Konzol kezelése (Managing Console I/O Operations) - jún Tömbök és stringek (arrays and strings) - jún Egy dimenziós tömb (1 -dimensional array) 2. n-dimenziós tömb(1 -dimensional array) 3. Sztringek (strings) 9. Felhasználói típusok (User Types) - jún Struktúra (struvture) 7. A class osztálytípus (class) 10. Függvények (Functions) - jún Függvény definíciója, hívása, deklarációja (Function definition, Call, Declaration 2. Függvény visszatérési értéke (Function returns) 11. Függvényekről magasabb szinten (function at a higher level - jún Beágyazott függvények (Embedded Functions) 2. Függvények átdefiniálása (Functions remapping) 12. Bevezetés az objektum orientált világba (OOSD Object Oriented Software Development) - jún Alapelemek (Basic Elements) 2. Alapvető elvek (Basic Principles) 13. Osztályok és objektumok (Classes and Objects) júl.01.

11 8. Adatok és műveletek(data&finctions) 9. Konstruktorok (Constructors) 10. Destruktor (Destructors) 14. Öröklés és polimorfizmus (Succession & Polymorphism - júl Osztályok származtatása (Deriving Classes) 2. Osztályok elérése (Accessing Classes) 3. Virtuális alaposztályok (Virtual Functions) 15. Fájlkezelés (Working with Files) - júl.03. Látogatásaink Uni Düsseldorf, Zentrum für informations- und Medientechnologie, Universitetätstraße 1, Düsseldorf IT living Gmbh, Flurstraße 57. Düsseldorf Mercedes Benz Werk Düsseldorf lektropower Gmbh Elektronikgeschäft Korthover Essen Fachhochschule Düsseldorf, Campus Derendorf Ratherstr. 24a, Düsseldorf meglátogatása IT On.net Gmbh Wiesenstraße 21 Düsseldorf Secusmart Gmbh, Heinrichstraße 155 Düsseldorf

12 Megérkezés Düsseldorfba :30 17:00 Az első gyakorlati napon megismerkedtünk a szeminárium vezetőjével, akinek valamennyien bemutatkoztunk. A mai nap folyamán megtudhattuk, hogy a 3 hét alatt foglalkozunk a C++ program felépítésével, alapműveleteivel, kifejezéseivel és vezérlő utasításaival :30 12:00 Látogatást tettünk Secusmart cégnél, ami a mobiltelefonok lehallgatását megakadályozó rendszert fejlesztett ki. 7 éve alakult, s dinamikusan fejlődött. A cég bemutatása után megtekinthettük a fejlesztői részleget. A munkatársaknak kérdéseket tehettünk fel. A falon számos post it-tel teletűzdelt diagram volt található, ami a közös munka terveit tartalmazta. Az osztály kutyusát is megsimogattuk. Az IT szakemberek számítógépeik előtt ülve végezték munkájukat. Sajnos fényképeket nem készthettünk. A következő momentuma fogadásunknak a nemzetközi kapcsolatok kialakításáról szólt. Milyen attitűddel kell rendelkeznie egy szakembernek ahhoz, hogy munkáját elvégezze, s számos ügyfelet szerezzen a cégnek. Nekik pld. a kormányhivatal is az ügyfelük :00 17:00 Írtunk egy rövid programot: #include <iostream> using namespace std; int main() cout << "Hello Servet tanar ur" << endl; return 0; :30 17: :30 12: :00 17:00 Gyakoroltuk a változók deklarálását, megbeszéltük a konstans és változó közötti különbséget. Egy érintőképernyős kijelzővel rendelkező server intelligenssé varázsolhatja otthonunkat. Az árnyékolástól a zenén át a fűtésig minden funkciót vezérel. Ezt mutatta be nekünk a az IT On.net Gmbh Düsseldorf cég képviselője. Egy ezzel a rendszerrel felszerelt szobát és a benne lévő berendezéseket próbálhattunk ki. Elmondták nekünk, hogy csak új építésű házakhoz ajánlják, mert az új technológia miatt egy régi ház teljes kábelezését ki kéne cserélni, amennyiben ilyen rendezrrel akarjuk ellátni. A kifejezések kiértékelése az elsőbbségi (precedencia) szabályok szerint történik, ezt matematikában is megtanultuk. Ha egy kifejezésben több művelet is előfordul, akkor a magasabb precedenciával rendelkező operátort tartlmazó részkifejezést értékelünk ki.

13 :30 12:00 Servet úrral ma a vezerlési szerkezeteket tanultuk. Használtunk Mai napon megtudtam, programunkban hogy A elágazást C++ nyelv és számlálós lehetővé teszi, ciklust is. hogy a kivételeket különböző típussal azonosítva, a :00 17:00 hibakezelést akár egyetlen helyen is elvégezhető.. A kivételek kezelése a megszakításos (termination) modell alapján történik :30 12:00 Az egyetemi hálózati, biztonsági és kommunikációs rendszerének megismerése volt a cél a mai gyakorlati napnak. Ezért ellátogattunk a düsseldorfi egyetem legújabb épületébe. Forgószínpas szerűen mindhárom csoportunknak ugyanazon érdekes dolgot mutatták meg. Számomra a legérdekesebb dologa szerverszoba volt, amely hatalmas biztonsági rendszerrel fog működni. Megtudtam, hogy közvetlen kapcsolat van a városi biztonsági szervezetekkel, hold. hgy probléma esetén azonnal ki tudjon vonulni pld. a tűzoltóság :00 17:00 Az iostream direktíva alkalmazási lehetőségeit tekintettük át. Ha ezl beépítjük a programba, akkor a cout és cin parancsokat a main függvényn belül használhatjuk a be és kivitere. Egy rövidke programrészlet: Cout<<"Kérek egy számot"<<endl; cin>>szam; :30 17:00 A tömb típusról tanultunk. Az iskolában már tanultunk a statikus tömbökről, ezeket az ismereteket felelevenítettük, majd azt is megtanultuk, hogy dinamikus tömb is létezik. Ennél már változó segítségvel is megadhatjuk a z elemszámot. A statikus tömb feltöltése számlálós ciklussal történik. for(i=0;i<=elemszám-1;í++) i tömb[i]= 'A'; ez a ciklus A betűkkel tölti fel a tömb elemeit :30 12:00 A szakmai pertnerünket látogattuk ma meg. A cég világhálón működteti rendszerét, vagyis tevékenységének nagy hányadát az e-kereskedelm teszi ki. A világhálón történő kereskedelem során számos szempontotra kell figyelmet fordítani. Melyek felölelik a technikai és szervezeti tényezőket. A cég vezetője ismertette velünk az e- kereskedelm problémáit, jogi szabályait :00 17:00 A C++ újabb típusával találkoztunk a mai órán. Ez a rekord típus volt, ami az összetett adattípusok sorát gazdagítja. Míg a tömb azonos típusú elemeket tárol, addig ebben a típusban különböző adattípusú elemek is tárolódhatnak. Megadásának általános alakja: típus rekordtípus: rekord(

14 mező1 : típus1 mező2 : típus2 ) Ezek után már deklarálhatunk :30 12: :30 12: :00 17:00 változó rekordnév: rekordtípus változót. A következő mintát készítettük el : #include <iostream> using namespace std; int osszeadas (int a, int b) // ez lesz a függvény neve és ezek a paraméterek int r; // belső változó deklarálása r=a+b; return (r); // visszatérési érték megadása int main () // Itt kezdődik a fő-ág. int z; // deklaráció z = osszeadas (5,3); //Függvény meghívása cout << "Eredmeny: " << z; // Végeredmény kiírása return 0; Mercedes Benz Werk Düsseldorfnál jártunk a mai délelőtt folyamán. A cég képviselője fogadott bennünket, majd kis bemutatóval illusztrálta a cég hatalmas méreteit. Védőszemüveggel felszerelkezve indultunk a gyártósorokat megtekinteni. Nagy élmény volt látni, hogy az emberi kéz által végzett munkát miként egészíti ki a robotok munkája. Számítógépes progamokkal van minden vezérrelve. Előre 2 órát programoznak be percről percre minden munkafázist. Az ellenőrzés is számítógépekkel történik. A szenzorokka mért adatokat szoftverekkel kiértékelik, s ennek alapján eldöntik, hogy a folyamat megfelelően játszódott le vagy sem. Megtudtuk, hogy amennyiben a karoszériában találnak rossz összeillesztést, akkor nem szedik szét, hanem hibás termékként a kukába kerül. A másik hangárban készre szerelt autókat láthattunk. Itt az emberi kéz által végzett munka nagyobb arányú volt, mint a robotika. Ma az objektum-orientált programozásról taultunk, ami a dolgokat és köztük fennálló kapcsolatokat használja alkalmazásokhoz. Servet úr remek példákon keresztül mutatta be nekünk az osztályokat, objektumokat, példányokat. Mi számos példát hoztunk objektumokra- Megismerkedtünk z alapvető elvekkel, melyek a következők: -bezárás -öröklés -polimorfizmus

15 :30 17:00 Az osztály egy új típus létrehozását jelenti a C++ nyelvben. Ezt a struct és a class kulcsszavakkal vezethetjük be. Az első esetben minden adat publikus, míg a második esetben megadható, hogy melyik legyen public avagy privat. Az objektum egy ilyen ttípussal rendelkező váltotó, mely magába foglalja az adatokat és a függvényeket egyaránt. A deklarálás során meg kell adni minden adat tíusát és nevét, ill. a tagfüggvények típusát és nevét. A tagfüggvények deklarálása történhet a class-on belül, de kívül is. Általános megadási mód: class OsztályNév public: típus4 Függvény1(paraméterlista1) típus3 Függvény3(paraméterlista3) private: típus1 adat11, adat12; típus2 adat2; ; :30 17: :30 12: :00 17:00 Ma megtanultuk, hogy nemcsak sztatikus és dinamikus helyfoglalással hozhatunk létre objektumokat, hanem a fordító futás közben is létrehozhat példányokat. Erre szolgálnak a konstruktorok. Ismerünk paraméteres, paraméter nélküli és másoló konstruktorokat. Ezek gyakorlatilag tagfüggvények. Kettővel alapból rendelkezik egy osztály: paraméter nélküli és másoló konstruktorral. Ma láttuk a világ 3. legnagyobb szerverét a Uni Düsseldorf, Zentrum für informations- und Medientechnologie, Universitetätstraße 1, Düsseldorf - n. A ben alapított 5 karral rendelkező egyetemnek hatalmas könyvtára és általunk már meglátogatott botanikus kertje van. Mi a ZIM szerverszobáját látogattuk meg, ahol a tárlatvezetőnk számos érdekes adattal szo helyen lgát. PLd.,5 millió euró az értéke annak a szervernek, amit a világon 3lkalmaznak. A legújabb technológiákkal dolgoznak, amit a 3 évenkénti felújítás eredményez. Sokmagos processzorokkal és terra nagyságrendű tárhelyekkel ellátott rack-ek tárultak elénk, de fényképezni nem szabadott. A kurzus elején már beszéltünk az OOP programozás elveiről, most bővebb információkat kaptunk az öröklés és polimorfizmusról, s azok fajtáiról. A fájlkezelés műveleteiről kaptunk ízelítőt, majd csoportmunkában ki is próbáltuk azokat. Jegyzettömbbel hoztunk létre állományokat, majd a fájlmegnyitás, bezárás, beolvasás és kiírás műveleteit gyakoroltuk.

16 Használtuk az eof függvényt, s a beolvasott adatokkal műveleteket végeztünk. Számoltunk átlagot, kerestünk legnagyobb és legkisebb értéket. Végül az eredményeket kiírtuk állományba. Jó volt a mai gyakorlati óra, sok :30 17:00 mindent tanultam és sok sikerélményem volt. A lezárás napja. Befejeztem a naplót. A többiekkel megbeszéltük éményeinket, összefoglaltuk a tanulságokat és átismételtük a tanult ismereteket.

17 Németország Düsseldorf MUNKANAPLÓ Mobilitási projekt HU01 - KA Készítette: Kiss Levente

18 A szeminárium tananyaga (The seminar curriculum) 1. Bevezetés (Introduction) - jún A szeminárium tananyag (The seminar curriculum) 6. A nyelv rövid története (A brief history of the language) 2. C++ programok készítése (Beginning with C++) - jún Alapvető szabályok (Basic Rules) 2. Fordítás, futtatás (Translation, run) 3. C++ program felépítése (Structure C ++ program) 3. Alaptípusok, változók és konstansok (Basic types, variables and constants) - jún C++ adatok csoportosítása C ++ Data Grouping 2. Változók definiálása (Define Variables) 3. Adattípusok áttekintése (Overview of Data Types) 4. Konstansok (Constants) 4. Alapműveletek és kifejezések (Basic Operations and Expressions - jún Operátorok csoportosítása (Operators Grouping 2. Műveleti sorrend (precedence) 3. Matematikai kifejezések (Mathematical expressions) 4. Értékadás (Assignment) 5. Logikai műveletek (Logical Operations) 5. Vezérlő utasítások (iteration, sequence, selection - jún Kivételkezelés (Exception Handling) - jún Kivételek kiváltása (Exceptions replacement) 2. Kivételek szűrése (Exceptions Filters) 7. Konzol kezelése (Managing Console I/O Operations) - jún Tömbök és stringek (arrays and strings) - jún Egy dimenziós tömb (1 -dimensional array) 2. n-dimenziós tömb(1 -dimensional array) 3. Sztringek (strings) 9. Felhasználói típusok (User Types) - jún Struktúra (struvture) 12. A class osztálytípus (class) 10. Függvények (Functions) - jún Függvény definíciója, hívása, deklarációja (Function definition, Call, Declaration 2. Függvény visszatérési értéke (Function returns) 11. Függvényekről magasabb szinten (function at a higher level - jún Beágyazott függvények (Embedded Functions) 2. Függvények átdefiniálása (Functions remapping) 12. Bevezetés az objektum orientált világba (OOSD Object Oriented Software Development) - jún Alapelemek (Basic Elements) 2. Alapvető elvek (Basic Principles) 13. Osztályok és objektumok (Classes and Objects) júl.01.

19 13. Adatok és műveletek(data&finctions) 14. Konstruktorok (Constructors) 15. Destruktor (Destructors) 14. Öröklés és polimorfizmus (Succession & Polymorphism - júl Osztályok származtatása (Deriving Classes) 2. Osztályok elérése (Accessing Classes) 3. Virtuális alaposztályok (Virtual Functions) 15. Fájlkezelés (Working with Files) - júl.03. Látogatásaink Uni Düsseldorf, Zentrum für informations- und Medientechnologie, Universitetätstraße 1, Düsseldorf IT living Gmbh, Flurstraße 57. Düsseldorf Mercedes Benz Werk Düsseldorf lektropower Gmbh Elektronikgeschäft Korthover Essen Fachhochschule Düsseldorf, Campus Derendorf Ratherstr. 24a, Düsseldorf meglátogatása IT On.net Gmbh Wiesenstraße 21 Düsseldorf Secusmart Gmbh, Heinrichstraße 155 Düsseldorf

20 Megérkezés Düsseldorfba :30 17:00 Eljött a gyakorlat első napja. Bemutatkozás után ismertették velünk a 3 hét menetét. Örömömre szolgált, hogy mindent megértettem, amiről szó volt. Megszerkesztettem a naplómat a Google drive-on, majd megosztottam tanárommal :30 12:00 Egy világhírű céget kerestünk fel a mai gyakorlati napon, a Secusmart Düsseldrof-t. A telefonok lehallgatásának megakadályozására fejlesztettek ki egy chip-et, ami a hangot kódolja. Jelenleg a legbiztonságosabb rendszer a világon. Ezt használják a kormányhivtalok és a kancellár is. Megtudtuk, hogy a Blacberry felvásárolta a céget. A nemzetközi kapcsolatokért felelős munkatárs munkájáról és az üzleti életben való viselkedésmódot, előkészületeket ismertette velünk. A cég szoftverrészlegét tekinthettük meg, ahol az IT szakemberek dolgoznak. A cég munkatársainak száma 70, amit 7 év alatt duzzasztott ennyire :00 17:00 Írtunk egy rövid programot: #include <iostream> using namespace std; int main() cout << "Hello Dusseldorf" << endl; return 0; :30 17: :30 12: :00 17:00 Egy változó deklarálása: típus változónév [=kezdőérték]; pld.: int szam; char kar; Az IT On.net Gmbh Düsseldorf cégél jártunk. Ez a vállalkozás új építésű házak inteligenssé varázslásának tervezésével foglalkozik. Teljesen emberi beavatkozás nélkül, vagy részben embei beavatkozást igénylő rendszerek ezek, mellyel a fűtéstől, szórakozáson át a riasztásig mindentautomatizálhatunk. Demonstrálták a sötétítést, a világítást és a megfigyelő rendszer automatizáló rendszerét. Ez a technológia új kábeleket alkalmaz, mely 30 V feszültséget juttat el a fogyasztókig. A kifejezések kiértékeléséről esett szó a mai gyakorlaton. Az (a+b)*(d-c)*e kifejezés feldolgozásának lépései: int a = 1, b = 2, c = 3, d = 4, e = 5; (a + b) 3 (d - c) 1 (a + b) * (d - c) 3 * 1 3 3* e 3 * 5 15

21 :30 12:00 A mai szakmai gyakorlaton felelevenítettük a vezérlési szerkezetkről Akivételek kezelése: tanultakat. Az elágazásnál alkalmaztuk a tegnapi A try-catch ismereteinket. programstruktúra Örömömre egyetlen szolgált, try blokkot hogy a és feltételes ciklus tetszőleges alkalmazását számú catch is megértettem. blokkot tartalmaz: try :00 17:00 // kivételfigyelés alatt álló utasítások utasítások catch (kivétel1 deklaráció) // a kivétel1 kezelője utasítások :30 12: :00 17: :30 17: :30 12:00 Egy helyi hálózati rendszert ismehetünk meg a mai napon, amikor a düsseldorfi egyetemre látogattunk el. Megmutatták nekünk a kábelezés hibajavítását, ill. a biztonsági berendezéseket, majd a belső hálózat kommunikációs rendszerét. A dékán személyesen fogadott bennünket, akitől az egyetem szervezeti felépítését is megtudhattuk. Nem voltam még szerver szobában, így a mai nap rendkívüli élmény volt a számomra. A cout és cin utasításokat gyakoroltuk a mai órán. Megbeszéltük az igazítási lehetőségeket is, amelynek alkalmazása csak az iomanip direktíva hozzácsatolásával lehetséges. Cout<<"Kérek tőled egy karaktert"<<endl; A tömbök olyan összetett adatszerkezetek, amelyek statikus mérettel rendelkeznek. A tömbök lehetnek egydimenziósak, kétdimenziósak és többdimenziósak. A tömb típusú változók deklarálásakor meg kell adni a tömb alaptípusát, és dimenzióinak számát. Pl.: -int[] szam; egy int alaptípusú, egydimenziós szam nevű tömböt deklarál. -double[,] tomb; egy double alaptípusú, kétdimenziós tomb nevű mátrixot deklarál. A változókba értéket kell elhelyezni, melynek során a new kulcsszó segítségével memóriát foglalunk le egy tényleges tömbnek, megadva a tömb statikus méretét. Az e-kereskedelem volt a mai gyakorlat táméja. Felkerestük szakmai partnerünket Essenben. A cég egyik boltjában találkoztunk a cég vezetőjével, akitől sok mindnt tanultunk. Ismertette velünk az e-kereskedelel elemeit, melyek a következők : - webszerver,

22 - alkalmazás szerver - adatbázis szerver. Érdekes volt megtudni az e-kereskedelm jogi szabályait, ill. azt is hogy előnyei mellett számos hátránnyal, nehézséggel :00 17: :30 12: :30 12:00 rendelkezik. A rekord két vagy több egymástól eltérő típusú változót (mezőt) foglal egyetlen egységbe. A rekord mezői a memóriában szigorúan egymást követően foglalnak helyet a rekordban történő felsorolásuk sorrendjében. A rekord méretét a mezők és ezen kitöltő területek összege határozza meg. A struct kulcsszóval vezetjük be. pld. struct Crekord string nev; int szulev; string anyja_neve; A rekordra a nevével, mezőire pedig a rekordnév.mezőnévvelhivatkozunk. Néhány mintát adtunk a függvényekre. Leginkább az alapműveletekre, hogy mindenki megértse. Én most a szorzásra mutatok be egy példát #include <iostream> using namespace std; float szorzas (float x, float y) float eredmeny; eredmeny=x*y; return (eredmeny); int main () float z=1; for (int i=1; i<11;i++) szorzat= szorzas (z,2); //Függvény meghívása cout << "2^10 = " << z; // Végeredmény kiírása return 0; A Mercedes Benz Werk Düsseldorf gyárban jártunk ma délelőtt. A gyár képviselője bemutatta a düsseldorfi kirendeltséget, melyen kívül még 2 városban van kirendeltsége Németországban a cégnek. Kis számú munkatárssal működik az USA-beli cég, s valamivel több alkalmazottal rendelkezik a spanyol leányvállalat. Üzleti megfontolásból a tengeren túlra gyártott autókat a temgeri

23 utaztatás előtt alkatrészeire szerelik szét, s az USA-ban újra összeszerelésre kerül. A gyárban 3 műszakban dolgoznak a munkások, s az ő munkájukat segítik a robotok. A karosszériát összeszerelő részlegben 500 robot és 300 emberi munkaerő végzi a szerelést. A gyártás egy percre sem áll le. Naponta 600 autót gyártanak megrendelésre :00 17: :30 17: :30 17: :30 12:00 Minden számítógéppel vezérelt. Eljutottunk az objektum-orientált programozás tárgyalásához. Nagyon érdekesnek találtam, mert az életből vettünk példákat az oszály, objektum, példány fogalmak megértéséhez. Objektum lehet pld. Egy madár, annak alobjektumai a repülő és a nem repülő madarak. Minden objektum magába foglalja az adatokat és metódusokat, ez az objektum orientált programozás egyik elve. Szó volt még a többi elvről is, mint az öröklés (a repülő és nem repülő madarak is ugyanazokat az adatokat és metódusokat öröklik), s nem utolsó sorban a polimorfizmus, ami lehetővé teszi, hogyaz öröklés során bizonyos metódusokat más tartalommal töltsük meg. Az objektum orientált program új típusa az osztály, amit a struct és a class kulcsszavakkal vezethetünk be. Az iskolában is tanultunk már róla, de úgy érzem most értettem meg igazán. A class gyakorlatilag magában foglalja az adatokat és műveleteket, s a való világ egy objektumának absztrahálását jelenti. Megadásakor a privát és publik szavakkal láthatjuk el őket aszerint, hogy hozzáférhet -e bárki, vagy csak a megfelelő szlőobjektum, vagy függvény. Az class és a struct osztályok deklarációját a C++ programban bárhol elhelyezhetjük, ahol deklaráció szerepelhet, azonban a modul szintű megadás felel meg leginkább a modern programtervezésnek. A konstruktor olyan tagfüggvény, amelynek neve megegyezik az osztály nevével, és nincs visszatérési típusa. A konstruktor nem rendelkezik visszatérési értékkel, de különben ugyanúgy viselkedik, mint bármely más tagfüggvény. A konstruktorok mellett a destruktorok is szóba kerültek a mai gyakorlati órán. Miért is van szükség rájuk? A helyfogalalás dinamikusan történik, a fordító vlgzi, s úgy a helyes, ha a lefoglalt területet felszabadítjuk. A szerver vagy kiszolgáló az informatikában olyan számítógépet, vagy szoftvert jelent, ami más számítógépek számára a rajta tárolt vagy előállított adatok felhasználását teszi lehetővé. Sok ilyet láttunk ma az egyetem ZIM épületében. A biztonsági berendezések miatt csak rövid ideig lehet nyitva a szoba ajtaja, így két csoportra osztottak bennünket,

24 s mindkét csoport egymás után jutott be a világ egyki legnagyobb és legbiztonságosabb szerverét is tartalmazó szerverszobába. A ZIM IT szakembereinek vezetője kalauzolt bennünket, akinek kérdéseket is tettünk fel. Nagyon érdekelt bennünket az ár és az adatmennyiség. Elépesztő adatmennyiség tárolódik egyilye helyen :00 17: :30 17:00 A hűtőberendezés hatását testközelben is érezhettük. A fájlkezelés volt terítéken. Ez a téma már előkerült az iskolában is, így az alapokat már tudtam. Valószínűleg azért is sikerült minden gyakorlati feladatot megoldani. A megoldás során használtuk a C++ nyelv beépített fájlkezelő függvényeit: f.open() f.close() eof() A be- és kimeneti fájl fogalmát is megtárgyaltuk. A fájlmegnyitást mindig ellenőriztük, majd a beolvasást egy elöltesztelős ciklussal oldottuk meg. Miután a bemenő adelvégzetük a kijelölt feladatokat, kiírtuk az ereményt egy fájlba.atokkal Lezárás. Felelevenítettük a 3 hét alatt történt dolgokat. Befejeztem a naplót. Megbeszéltük a tapasztalatokat.

25 Németország Düsseldorf MUNKANAPLÓ Mobilitási projekt HU01 - KA Készítette: Pop Csenge

26 A szeminárium tananyaga (The seminar curriculum) 1. Bevezetés (Introduction) - jún A szeminárium tananyag (The seminar curriculum) 8. A nyelv rövid története (A brief history of the language) 2. C++ programok készítése (Beginning with C++) - jún Alapvető szabályok (Basic Rules) 2. Fordítás, futtatás (Translation, run) 3. C++ program felépítése (Structure C ++ program) 3. Alaptípusok, változók és konstansok (Basic types, variables and constants) - jún C++ adatok csoportosítása C ++ Data Grouping 2. Változók definiálása (Define Variables) 3. Adattípusok áttekintése (Overview of Data Types) 4. Konstansok (Constants) 4. Alapműveletek és kifejezések (Basic Operations and Expressions - jún Operátorok csoportosítása (Operators Grouping 2. Műveleti sorrend (precedence) 3. Matematikai kifejezések (Mathematical expressions) 4. Értékadás (Assignment) 5. Logikai műveletek (Logical Operations) 5. Vezérlő utasítások (iteration, sequence, selection - jún Kivételkezelés (Exception Handling) - jún Kivételek kiváltása (Exceptions replacement) 2. Kivételek szűrése (Exceptions Filters) 7. Konzol kezelése (Managing Console I/O Operations) - jún Tömbök és stringek (arrays and strings) - jún Egy dimenziós tömb (1 -dimensional array) 2. n-dimenziós tömb(1 -dimensional array) 3. Sztringek (strings) 9. Felhasználói típusok (User Types) - jún Struktúra (struvture) 17. A class osztálytípus (class) 10. Függvények (Functions) - jún Függvény definíciója, hívása, deklarációja (Function definition, Call, Declaration 2. Függvény visszatérési értéke (Function returns) 11. Függvényekről magasabb szinten (function at a higher level - jún Beágyazott függvények (Embedded Functions) 2. Függvények átdefiniálása (Functions remapping) 12. Bevezetés az objektum orientált világba (OOSD Object Oriented Software Development) - jún Alapelemek (Basic Elements) 2. Alapvető elvek (Basic Principles) 13. Osztályok és objektumok (Classes and Objects) júl.01.

27 18. Adatok és műveletek(data&finctions) 19. Konstruktorok (Constructors) 20. Destruktor (Destructors) 14. Öröklés és polimorfizmus (Succession & Polymorphism - júl Osztályok származtatása (Deriving Classes) 2. Osztályok elérése (Accessing Classes) 3. Virtuális alaposztályok (Virtual Functions) 15. Fájlkezelés (Working with Files) - júl.03. Látogatásaink Uni Düsseldorf, Zentrum für informations- und Medientechnologie, Universitetätstraße 1, Düsseldorf IT living Gmbh, Flurstraße 57. Düsseldorf Mercedes Benz Werk Düsseldorf lektropower Gmbh Elektronikgeschäft Korthover Essen Fachhochschule Düsseldorf, Campus Derendorf Ratherstr. 24a, Düsseldorf meglátogatása IT On.net Gmbh Wiesenstraße 21 Düsseldorf Secusmart Gmbh, Heinrichstraße 155 Düsseldorf

28 Megérkezés Düsseldorfba :30 17:00 Az első gyakorlati napon megismerkedtünk Servet tanár úrral, aki a szemináriumot vezeti majd nekünk. Mindannyian bemutatkoztunk. Ismertette velünk a 3 hét programját. Az objektum orientált programozással foglalkozunk majd :30 12:00 Ma az üzleti élet,termékeladás,managmenelésről is szó esett a Secusmart Gmbh-t felkerestük a Heinrichstraße ben. Egy biztonsági rendszert forgalmazó cég képviselőivel találkoztunk, akiktől sok mindent tanulhattunk. A cég bemutatása német nyelven folyt, a Blacberry képviselője pedig angol nyelven mutatkozott be, s tett fel néhány kérdést nekünk. A nmzetközi kapcsolatokért felelős munkatárs az üzleti tárgyalásokról, megjelensről, előkészületekről beszélt nekünk. Számos kérdést tett fel nekünk céljainkkal kapcsolatosan, s számos ötlettel állt előezek megvalósításához. Megtudtuk tőle, hogy a viág minden tájára forgalmaznak, s biztonsági rendszerüket alkalmazza a szövetségi hivatal is :00 17:00 Írtunk egy rövid programot: #include <iostream> using namespace std; int main() cout << "Hello Pop Csenge" << endl; return 0; :30 17:00 Számos változót és konstanst deklaráltunk, megbeszéltük a kezdőérték fogalmát :30 12:00 Egy központi vezérléssel ellátott redszert láttunk ma, amikor az IT On.net Gmbh céget látogattuk meg. Egész otthonunkat automatikusan működő rendszerrel varázsolhatjuk okossá. A cég a rendszer megtervezésével foglalkozik, a kivitelezésben csupán partnerek megtalálását ígéri. Nem minden villanyszerelő ismeri a technológiát, ezért fontos a jó kapcsolatteremtés. Egy éritő képernyővel irnyított rendszert láthattunk, amely a világítást, médiát, riasztó rendszert is magába foglalta :00 17:00 A programozás során használt műveleteket két nagy csoportra osztjuk az operandusok száma alapján. Megkülönböztetünk egy és két operandusú műveleteket. A mai gyakorlaton számos kifejezést értékeltünk ki, s alakítottunk át :30 12:00 A csoportunk egy olyan programot írt, ami feltöltött egy :00 17:00 tömböt Ma szó egész esett a számokkal, kivételek kiváltásáról. így a vezérlési A kivételkezelést szerkezetek közül a a számlálós ciklust alkalmazta.

29 programunk adott részén belül, lokálisan kell kialakítanunk :30 12: :00 17: :30 17: :30 12: :00 17:00 a try, a throw és a catch kulcsszavak felhasználásával. Az iskolában már csoportosítottuk a hálózatokat kiterjesztés szerint,s ma az egyik csoporttal, a helyi hálózattal ismerkedtünk meg, amikor ellátogattunk az egyetemre. A dékántól megtudtuk, hogy milyen szakokat tanulhat itt a közel 6000 diák. 3 csoportra osztottak bennünket. Az én csoportom először a szerver szoba biztonsági berendezéseit nézhette meg, ill. próbálhatta ki, majd a helyi rendszer hibakeresési módszerét mutatták meg nekünk, s végül az egyetem kommunikációs rendszerének működését illusztrálták egy hatalmas kivetítőn. Megtduhatta azt is hogy az IP telefonra milyen rendszer van ráépítve, s hogy mennyi mindent el tud egy egyetemi dolgozó intézni a telefonjával. Ma szó volt a különböző direktívák alkalmazásáról és a konzolkezelésről tanultunk. Használtuk a cout és cin parancsokat. A tömbökről tanultunk ma. Létezik egy, két- és többdimenziós. A kétdimenziós tömbök esetén egy konkrét elemre két sorszámmal hivatkozhatunk (sor és oszlop index). Ezen sorszán egy nxm elemű tömb esetén [0,n-1] ill. [0,m-1] intervallumból kerül ki (a mátrix sorainak és oszlopainak sorszámozása is 0-val kezdődik). Kezelését leggyakrabban két, egymásba ágyazott for ciklussal valósítjuk meg: for(int i=0;i<n;i++) for(int j=0;j<m;j++) tomb[i,j]=i*10+j; Az i értéke 0..n-1 mehet, mivel azt használjuk a sor azonosítására. A j értéke pedig 0..m-1 mehet, mivel azt használjuk az oszlop azonosítására. Ha olyan mátrixelemre hivatkozunk, amely nem létezik, úgy futás közbeni hibát fogunk kapni. Az e-kereskedelemmel foglalkozó vállalatot ismerhettünk meg ma Essenben. A cég vezetője a bemutatkozás után elmesélte a cég történetét, majd az e-kereskedelm szervezésiműködéséről, vásárló orientált működési tényezőkről beszélt nekünk. Megtudtam azt, hogy milyen elemekből épül fel egy ilyen rendszer, szükség van egy webszerverre, azt működtető felületre, s egy adatbázis szerverre, ami az alkalmazás szervert adatokkal látja el. A rekordok fontos feladatot látnak el, hiszen elemi adatokból építhetünk összetett adatszerkezeteket ily módon. A rekordok ezzel jobban modellezik a valós feladatok adatigényét. Többek között ezt is megtudhattuk Servet úrtól

30 a mai gyakorlati napon. Rekordokat deklaráltunk, ügyelve arra, hogy minden mező nevét és típusát megadjuk. Létrehoztunk egy Challgató rekord típust, amely 3 mezőt tartalmazott, majd ilyen típusú változót deklaráltunk, s kiírattuk a képernyőre a tartalmát. Nagyon tetszett a mai óra :30 12: :30 12: :00 17: :30 17:00 A mai gyakorlati napona függvényekről beszélgettünk, elmagyarzták mit jelentenek a paraméterek, s miként adható meg egy függvény deklarációja, majd magunk is hoztunk létre néhány függvényt. Sikerült a kivonás műveletét megírni. Remélem a mai anyag az objektum orientált programozást is elősegíti, mert az az iskolában kevésbé értettem meg. Mercedes Benz Werk Düsseldorf gyárban jártunk. A hatalmas Mercedes cég egyik legnagyobb gyára itt Németországban, közel 6500 dolgozóval, akik 3 műszakban dolgoznak napi 8 órában, s gyakran még szombatonként is. A szalag csak kivételes alkalmakkor, ill. a szabályok szerint járó szünetekben áll le. Lenyűgözött a tény, hogy némelyik részlegben több robot dolgozik, mint ember. Mindent számítógépekkel vezérelnek, s előre 2 órát tudnak beprogramozni. Az ellenőrzés során mért adatokat is számítógépes programokkal dolgozzák fel. Az USA-ba gyártott autókat tengerre szállás előtt darabjaira szerelik szét, aminek áfa vonzata kisebb, mint a kész terméké. A mai gyakorlaton felhívták a figyelmünket arra, hogy az OOP nyelvek általában csak eszközöket és támogatást nyújtanak az objektum-orientáltság elveinek megvhívtalósításáhozlent.ezen elvekről sok szó esett a mai órán. Megtanultam, hogy mit jelent a bezárás, absztrakció, öröklés és a polimorfizmus. A class és a struct kulcsszavakkal deklarált új típusokról tanultunk ma a gyakorlaton. Mindkettő magában foglalja ugyan az adatokat és függvényeket, csak az egyiknél minden adat publikus. Deklaráltunk osztályt, majd hoztunk létre az új típussal változót. class Dolgozo private: int azon; string nev; int ber; public: void Emel(int szlab) ber *= (1 + szlab/100);

31 void Bevitel(int tsz, string n, int b) azo = tsz;n nev = n; ber = b; ; :30 17: :30 12: :00 17: :30 17:00 A mai gyakorlati nap egy részéban a konstruktorokról és destruktorokról tanultunk. Olyan témakör ez, amiről eddig én még nem hallottam. Érdeklődéssel figyelmet, hogy a következő évben információim legyenek róla. Megtanultam azt, hogy objektum létrehozásának egy módja ez, amikor is a fordító hoz létre új példányt, vagy esetleg szabadít fel helyet, így nem a programozónak kell helyet lefoglali a memóriában. Ez a tárhely használatot tudja lecsökkenteni, ami a mai programok esetén bizony fontos dolog. E két új fogalom gyakorlatilag nem is új, hisz tagfüggvényeket jelent, csak más a funkciójuk, és a deklarációjuk. Ma a Uni Düsseldorf, Zentrum für informations- und Medientechnologie, Universitetätstraße 1, Düsseldorf - jártunk. A környék ismerős volt, mert a botanikus kertet keresve már jártunk itt. Az egyetem az egyik legfiatalabbik egyetem Düsseldorfban, 5 karral rendelkezik: orvosi, jogi, közgazdasági, természettudományi és bölcsészettudományi karral. A ZIM épületében található a szerverszoba, ami hatalmas mennyiségű adatforgalmat boyolít le. Nem csak az egyetem informatika rendszerét szolgálja ki, hanem más vállalkozásoknak is bérbe adják. 3 évente fel kell újítani, hogy a legmodernebb technolgiával tudjanak dolgozni. A C++ - ban lehetőségünk va fájlok kezelésére. Erről tanultunk a mai gyakorlaton. Megkülönböztetünk be- és kimeneti állományokat, melyeket a programban az ifstream és ofstream típusokkal hozunk létre. Deklarálásuk a köv. képp történik: ifstream(f,"a létező fájl neve"); Ügyelni kell arra, hogy amennyiben nem a megfelelő könyvtárba helyeztük el a z állományt, akkor az elérési útvonalat is meg kell adni. A megnyitást az f.fail() függvénnyel ellenőrizhetjük. A projekt lezárásának napja. Tapasztalatok megbeszélése történt a mai napon.

32 Befejeztem a napló írását.

33 Németország Düsseldorf MUNKANAPLÓ Mobilitási projekt HU01 - KA Készítette: Klein Dániel

34 A szeminárium tananyaga (The seminar curriculum) 1. Bevezetés (Introduction) - jún A szeminárium tananyag (The seminar curriculum) 10. A nyelv rövid története (A brief history of the language) 2. C++ programok készítése (Beginning with C++) - jún Alapvető szabályok (Basic Rules) 2. Fordítás, futtatás (Translation, run) 3. C++ program felépítése (Structure C ++ program) 3. Alaptípusok, változók és konstansok (Basic types, variables and constants) - jún C++ adatok csoportosítása C ++ Data Grouping 2. Változók definiálása (Define Variables) 3. Adattípusok áttekintése (Overview of Data Types) 4. Konstansok (Constants) 4. Alapműveletek és kifejezések (Basic Operations and Expressions - jún Operátorok csoportosítása (Operators Grouping 2. Műveleti sorrend (precedence) 3. Matematikai kifejezések (Mathematical expressions) 4. Értékadás (Assignment) 5. Logikai műveletek (Logical Operations) 5. Vezérlő utasítások (iteration, sequence, selection - jún Kivételkezelés (Exception Handling) - jún Kivételek kiváltása (Exceptions replacement) 2. Kivételek szűrése (Exceptions Filters) 7. Konzol kezelése (Managing Console I/O Operations) - jún Tömbök és stringek (arrays and strings) - jún Egy dimenziós tömb (1 -dimensional array) 2. n-dimenziós tömb(1 -dimensional array) 3. Sztringek (strings) 9. Felhasználói típusok (User Types) - jún Struktúra (struvture) 22. A class osztálytípus (class) 10. Függvények (Functions) - jún Függvény definíciója, hívása, deklarációja (Function definition, Call, Declaration 2. Függvény visszatérési értéke (Function returns) 11. Függvényekről magasabb szinten (function at a higher level - jún Beágyazott függvények (Embedded Functions) 2. Függvények átdefiniálása (Functions remapping) 12. Bevezetés az objektum orientált világba (OOSD Object Oriented Software Development) - jún Alapelemek (Basic Elements) 2. Alapvető elvek (Basic Principles) 13. Osztályok és objektumok (Classes and Objects) júl.01.

Osztály és objektum fogalma

Osztály és objektum fogalma Osztály és objektum fogalma A C++ programozási nyelv I. CPP1/ 1 Az osztály (class) class: adatok és módszerek (method) (függvények) együttese, amely absztrakt adattípusként működik. objektum: egy osztály

Részletesebben

4. Öröklődés. Programozás II

4. Öröklődés. Programozás II 4. Öröklődés Programozás II Mielőtt belevágunk Egy Tárgy típusú objektumokat tároló tömb i. elemében tároljunk el egy új tárgyat Rossz módszer: tomb[i].setnev( uj.getnev() ); tomb[i].setertek( uj.getertek()

Részletesebben

Programozás C++ -ban 2007/4

Programozás C++ -ban 2007/4 Programozás C++ -ban 2007/4 1. Az adatokhoz való hozzáférés ellenőrzése Egy C programban a struktúrák minden része mindig elérhető. Ugyanakkor ez nem a legkedvezőbb helyzet. Több szempontból is hasznos

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

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek

OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN. vizsgatételek OBJEKTUM ORIENTÁLT PROGRAMOZÁS JAVA NYELVEN vizsgatételek 1. Az objektumorientált programozás szemlélete, az objektum fogalma 2. Az objektumorientált programozás alapelvei 3. A Java nyelv története, alapvető

Részletesebben

Programozás alapjai II. (9. ea) C++ többszörös öröklés, cast, perzisztencia

Programozás alapjai II. (9. ea) C++ többszörös öröklés, cast, perzisztencia Öröklés ism. Programozás alapjai II. (9. ea) C++ többszörös öröklés, cast, perzisztencia Szeberényi Imre BME IIT Egy osztályból olyan újabb osztályokat származtatunk, amelyek rendelkeznek

Részletesebben

Programozás II gyakorlat. 4. Öröklődés

Programozás II gyakorlat. 4. Öröklődés Programozás II gyakorlat 4. Öröklődés Feladat Egy játékfejlesztő cég olyan programot fejleszt, amely nyilvántartja az alkalmazottai adatait. Tároljuk minden személy: Nevét (legfeljebb 50 karakter) Születési

Részletesebben

Bevezetés a C++ programozási nyelvbe

Bevezetés a C++ programozási nyelvbe Miskolci Egyetem Általános Informatikai Tanszék Bevezetés a C++ programozási nyelvbe Oktatási segédlet Összeállította: Ficsor Lajos 2001. 1. A C++ programozási nyelv története A C++ programozási nyelv

Részletesebben

Bevezetés a Programozásba II 11. előadás. Adatszerkezetek megvalósítása. Adatszerkezetek megvalósítása Adatszerkezetek

Bevezetés a Programozásba II 11. előadás. Adatszerkezetek megvalósítása. Adatszerkezetek megvalósítása Adatszerkezetek Pázmány Péter Katolikus Egyetem Információs Technológiai és Bionikai Kar Bevezetés a Programozásba II 11. előadás 2014.05.12. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Adatszerkezetek

Részletesebben

117. AA Megoldó Alfréd AA 117.

117. AA Megoldó Alfréd AA 117. Programozás alapjai 2. (inf.) pót-pótzárthelyi 2011.05.26. gyak. hiányzás: kzhpont: MEG123 IB.028/117. NZH:0 PZH:n Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti,

Részletesebben

A C++ öröklés. (Előfeltétel: 12. tétel ismerete)

A C++ öröklés. (Előfeltétel: 12. tétel ismerete) Az öröklés fogalma: A C++ öröklés (Előfeltétel: 12. tétel ismerete) olyan alapvető programozási technika, amely lehetővé teszi, hogy a már meglévő osztályainkból újakat tudunk származtatni, valamint az

Részletesebben

Az élet szép, környezetünk tele van fákkal, virágokkal, repdeső madarakkal, vidáman futkározó állatokkal.

Az élet szép, környezetünk tele van fákkal, virágokkal, repdeső madarakkal, vidáman futkározó állatokkal. Objektumorientált programozás Az élet szép, környezetünk tele van fákkal, virágokkal, repdeső madarakkal, vidáman futkározó állatokkal. Ez a nem művészi értékű, de idillikus kép azt a pillanatot mutatja,

Részletesebben

OAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1.

OAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1. OAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1. Feladat Szimuláljuk különféle élőlények túlélési versenyét. A lények egy pályán haladnak végig, ahol váltakozó viszonyok vannak. Egy lénynek

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 1. rész Osztályok és objektumok Mezık és metódusok Konstruktor és destruktor Láthatósági szintek Névterek és hatókörök Osztály szintő tagok Beágyazott osztályok

Részletesebben

Emlékeztető: a fordítás lépései. Szimbólumtábla-kezelés. Információáramlás. Információáramlás. Információáramlás.

Emlékeztető: a fordítás lépései. Szimbólumtábla-kezelés. Információáramlás. Információáramlás. Információáramlás. Emlékeztető: a fordítás lépései Forrás-kezelő (source handler) Szimbólumtábla-kezelés Fordítóprogramok előadás (A, C, T szakirány) Lexikális elemző (scanner) Szintaktikus elemző (parser) Szemantikus elemző

Részletesebben

PHP5 Új generáció (2. rész)

PHP5 Új generáció (2. rész) PHP5 Új generáció (2. rész)...avagy hogyan használjuk okosan az osztályokat és objektumokat PHP 5-ben. Cikksorozatom elõzõ részében képet kaphattunk arról, hogy valójában mik is azok az objektumok, milyen

Részletesebben

strings.xml res/values/strings.xml fájlban hozzuk létre a hiányzó string adatforrásainkat A jelenlegi helyett ez álljon: <resources> <string

strings.xml res/values/strings.xml fájlban hozzuk létre a hiányzó string adatforrásainkat A jelenlegi helyett ez álljon: <resources> <string Resource Objects Adatforrás elemeket hivatkozás (referencia, mutató) segítségével használhatunk, ezek karakterláncok (stringek), képek, azonosítók vagy akár fájlok is lehetnek A mappastruktúra egységesen

Részletesebben

C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem

C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem C# nyelv alapjai Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem Objektumorientált programozás C# alapokon tananyag Tartalom Bevezetés Lokális változó Utasítások Szójáték Why do all real

Részletesebben

Bánsághi Anna anna.bansaghi@mamikon.net

Bánsághi Anna anna.bansaghi@mamikon.net ESEMÉNYVEZÉRELT PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 2. ELŐADÁS - C# ÁTTEKINTÉS - 2 2015 Bánsághi Anna 1 of 64 TEMATIKA I. C# ÁTTEKINTÉS II. WPF III. Modern UI 2015 Bánsághi Anna 2 of 64

Részletesebben

C++ programozási nyelv Struktúrák a C++ nyelvben Gyakorlat

C++ programozási nyelv Struktúrák a C++ nyelvben Gyakorlat C++ programozási nyelv Struktúrák a C++ nyelvben Gyakorlat 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/12 Input-output

Részletesebben

JAVA PROGRAMOZÁS 3.ELŐADÁS

JAVA PROGRAMOZÁS 3.ELŐADÁS Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 3.ELŐADÁS 2014-2015 tavasz Polimorfizmus, absztrakt osztályok, interfészek 2 Példa - Hengerprogram 3 Példa - Hengerprogram 4 Példa - Hengerprogram

Részletesebben

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010 Programozási technikák Pál László Sapientia EMTE, Csíkszereda, 2009/2010 Előadás tematika 1. Pascal ismétlés, kiegészítések 2. Objektum orientált programozás (OOP) 3. Delphi környezet 4. Komponensek bemutatása

Részletesebben

Előzmények 2011.10.23.

Előzmények 2011.10.23. Előzmények Dr. Mileff Péter A 80-as évek közepétől a szoftverek komplexitása egyre növekszik. Megjelentek az OO nyelvek. Az OO fejlesztési módszerek a rendszer különböző nézőpontú modelljeit készítik el.

Részletesebben

Magas szintű programozási nyelvek 2 Előadás jegyzet

Magas szintű programozási nyelvek 2 Előadás jegyzet Magas szintű programozási nyelvek 2 Előadás jegyzet 1. Rendszerfejlesztés 0. lépés: Elemzés (analízis) 1. lépés: Tervezés a, technológia független rész b, technológia függő rész 2. lépés: Megvalósítás

Részletesebben

0.1. Mi az a standard be- és kimenet?... 1. 0.2. A két mintafeladat leírása

0.1. Mi az a standard be- és kimenet?... 1. 0.2. A két mintafeladat leírása KöMaL Technikai tanácsok az I- és S-jelű pontversenyhez A standard be- és kimenet kezelése Tartalomjegyzék 0.1. Mi az a standard be- és kimenet?............................. 1 0.2. A két mintafeladat leírása.................................

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 3. rész Tulajdonságok Indexelık Kivételkezelés Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendı anyag vázlatát

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 1. rész Osztályok és objektumok Mezık és metódusok Konstruktor és destruktor Névterek és hatókörök Láthatósági szintek Osztály szintő tagok Beágyazott osztályok

Részletesebben

Objektumorientált programozás C# nyelven III.

Objektumorientált programozás C# nyelven III. Objektumorientált programozás C# nyelven III. Kivételkezelés Tulajdonságok Feladatok Készítette: Miklós Árpád Dr. Kotsis Domokos Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és

Részletesebben

Programozási alapismeretek :: beadandó feladat. Felhasználói dokumentáció. Molnár Tamás MOTIABT.ELTE motiabt@inf.elte.

Programozási alapismeretek :: beadandó feladat. Felhasználói dokumentáció. Molnár Tamás MOTIABT.ELTE motiabt@inf.elte. Programozási alapismeretek :: beadandó feladat Készítő adatai Név: Molnár Tamás EHA: MOTIABT.ELTE E-mail cím: motiabt@inf.elte.hu Gyakorlatvezető: Horváth László Feladat sorszáma: 23. Felhasználói dokumentáció

Részletesebben

A PROGAMOZÁS ALAPJAI 1. Függvény mint függvény paramétere. Függvény mint függvény paramétere. Függvény mint függvény paramétere

A PROGAMOZÁS ALAPJAI 1. Függvény mint függvény paramétere. Függvény mint függvény paramétere. Függvény mint függvény paramétere 2012. április 10. A PROGAMOZÁS ALAPJAI 1 Vitéz András egyetemi adjunktus BME Híradástechnikai Tanszék vitez@hit.bme.hu Miről lesz ma szó? alaki szabályok használata - mintapélda használata - mintapélda

Részletesebben

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3)

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3) Programozás alapjai C nyelv 5. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.17. -1- Tömbök Azonos típusú adatok tárolására. Index

Részletesebben

Programozás II gyakorlat. 8. Operátor túlterhelés

Programozás II gyakorlat. 8. Operátor túlterhelés Programozás II gyakorlat 8. Operátor túlterhelés Kezdő feladat Írjunk egy Vector osztályt, amely n db double értéket tárol. A konstruktor kapja meg az elemek számát. Írj egy set(int idx, double v) függvényt,

Részletesebben

Bevezetés a C++ programozásba

Bevezetés a C++ programozásba Bevezetés a C++ programozásba A program fogalma: A program nem más, mint számítógép által végrehajtható utasítások sorozata. A számítógépes programokat különféle programnyelveken írhatjuk. Ilyen nyelvek

Részletesebben

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

Programozás II. 4. Dr. Iványi Péter Programozás II. 4. Dr. Iványi Péter 1 inline függvények Bizonyos függvények annyira rövidek, hogy nem biztos hogy a fordító függvényhívást fordít, hanem inkább az adott sorba beilleszti a kódot. #include

Részletesebben

PHP II. WEB technológiák. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19

PHP II. WEB technológiák. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19 PHP II. WEB technológiák Tóth Zsolt Miskolci Egyetem 2014 Tóth Zsolt (Miskolci Egyetem) PHP II. 2014 1 / 19 Tartalomjegyzék Objektum Orientált Programozás 1 Objektum Orientált Programozás Öröklődés 2 Fájlkezelés

Részletesebben

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek.

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. Programozás III CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban van a fejlesztő környezet és az osztálykönyvtárak is: rt.jar fájl

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

3. Gyakorlat Ismerkedés a Java nyelvvel

3. Gyakorlat Ismerkedés a Java nyelvvel 3. Gyakorlat Ismerkedés a Java nyelvvel Parancssori argumentumok Minden Java programnak adhatunk indításkor paraméterek, ezeket a program egy tömbben tárolja. public static void main( String[] args ) Az

Részletesebben

2.1.A SZOFTVERFEJLESZTÉS STRUKTÚRÁJA

2.1.A SZOFTVERFEJLESZTÉS STRUKTÚRÁJA 2.Szoftverfejlesztés 2.1.A SZOFTVERFEJLESZTÉS STRUKTÚRÁJA Szoftverfejlesztés: magában foglalja mindazon elveket, módszereket és eszközöket, amelyek célja a programok megbízható és hatékony elkészítésének

Részletesebben

Származtatási mechanizmus a C++ nyelvben

Származtatási mechanizmus a C++ nyelvben Származtatási mechanizmus a C++ nyelvben Miskolci Egyetem Általános Informatikai Tanszék CPP2 / 1 Az öröklődés s fogalma 1. Egy osztály deklarálható valamely más osztály(ok) leszármazottjaként. Az deklaráció

Részletesebben

Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Pál László. Sapientia EMTE, Csíkszereda, 2014/2015 Objektumorientált programozás Pál László Sapientia EMTE, Csíkszereda, 2014/2015 2. ELİADÁS Visual Basic bevezetı Visual Basic.NET nyelvi elemek 2 Visual Basic.NET programozási nyelv Nyelvi elemek: Általában

Részletesebben

A SZOFTVERTECHNOLÓGIA ALAPJAI

A SZOFTVERTECHNOLÓGIA ALAPJAI A SZOFTVERTECHNOLÓGIA ALAPJAI Objektumorientált tervezés 8.előadás PPKE-ITK Tartalom 8.1 Objektumok és objektumosztályok 8.2 Objektumorientált tervezési folyamat 8.2.1 Rendszerkörnyezet, használati esetek

Részletesebben

SZAKDOLGOZAT. Kiss Albert

SZAKDOLGOZAT. Kiss Albert SZAKDOLGOZAT Kiss Albert Debrecen 2009 Debreceni Egyetem Informatikai Kar A VIZUÁLIS PROGRAMOZÁS TANÍTÁSA A DEBRECENI MECHWART ANDRÁS GÉPIPARI ÉS INFORMATIKAI SZAKKÖZÉPISKOLÁBAN Témavezető: Nyakóné dr.

Részletesebben

Java Development Alapképzés

Java Development Alapképzés Java Development Alapképzés Mit fogsz megtanulni az első fázisban? A képzés első része, amely hat hétig tart, bevezet a programozás világába, meg lehet tanulni hogyan használjátok a fejlesztő eszközöket

Részletesebben

A Szekszárdi I. Béla Gimnázium Helyi Tanterve

A Szekszárdi I. Béla Gimnázium Helyi Tanterve A Szekszárdi I. Béla Gimnázium Helyi Tanterve Négy évfolyamos gimnázium Informatika Készítette: a gimnázium reál munkaközössége 2015. Tartalomjegyzék Alapvetés...3 Egyéb kötelező direktívák:...6 Informatika

Részletesebben

Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI)

Webes alkalmazások fejlesztése 8. előadás. Webszolgáltatások megvalósítása (ASP.NET WebAPI) Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése 8. előadás (ASP.NET WebAPI) 2016 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto A webszolgáltatás

Részletesebben

C#, OOP. Osztályok tervezése C#-ban

C#, OOP. Osztályok tervezése C#-ban C#, OOP Osztályok tervezése C#-ban OOP Létrehozás (creating) Megszüntetés (destroying) Túlterhelés (overlading) Felsorolás típus (enumerated types) 2 Hajó osztály Sailboat class using System; class Sailboat

Részletesebben

Programozás 5. Dr. Iványi Péter

Programozás 5. Dr. Iványi Péter Programozás 5. Dr. Iványi Péter 1 Struktúra Véges számú különböző típusú, logikailag összetartozó változó együttese, amelyeket az egyszerű kezelhetőség érdekében gyűjtünk össze. Rekord-nak felel meg struct

Részletesebben

Globális operátor overloading

Globális operátor overloading Programozás II. 9. gyakorlat Operátor overloading 2: Unáris operátorok, globálisan megvalósított operátorok, > operátorok Kivételkezelés, IO library Globális operátor overloading Előző alkalommal

Részletesebben

Körkörös listák. fej. utolsó. utolsó. fej

Körkörös listák. fej. utolsó. utolsó. fej Körkörös listák fej utolsó fej utolsó Példa. Kiszámolós játék. Körben áll n gyermek. k-asával kiszámoljuk őket. Minden k-adik kilép a körből. Az nyer, aki utolsónak marad. #include using namespace

Részletesebben

15. Programok fordítása és végrehajtása

15. Programok fordítása és végrehajtása 15. Programok fordítása és végrehajtása Programok fordítása és végrehajtása. (Fordítás és interpretálás, bytecode. Előfordító, fordító, szerkesztő. A make. Fordítási egység, könyvtárak. Szintaktikus és

Részletesebben

On-line értékelési módszerek II. Lengyelné Molnár Tünde

On-line értékelési módszerek II. Lengyelné Molnár Tünde On-line értékelési módszerek II. Lengyelné Molnár Tünde MÉDIAINFORMATIKAI KIADVÁNYOK On-line értékelési módszerek II. Lengyelné Molnár Tünde Eger, 2013 Korszerű információtechnológiai szakok magyarországi

Részletesebben

Pénzügyi algoritmusok

Pénzügyi algoritmusok Pénzügyi algoritmusok A C++ programozás alapjai Sztringek Osztályok alapjai Sztringek Szöveges adatok kezelése Sztring Karakterlánc (string): Szöveges adat Karaktertömbként tárolva A szöveg végét a speciális

Részletesebben

Pénzügyi algoritmusok

Pénzügyi algoritmusok Pénzügyi algoritmusok A C++ programozás alapjai Az Integrált Fejlesztői Környezet C++ alapok Az Integrált Fejlesztői Környezet Visual Studio 2013 Community Edition Kitekintés: fordítás Preprocesszor Fordító

Részletesebben

1. Alapok. Programozás II

1. Alapok. Programozás II 1. Alapok Programozás II Elérhetőség Név: Smidla József Elérhetőség: smidla dcs.uni-pannon.hu Szoba: I916 2 Irodalom Bjarne Stroustrup: A C++ programozási nyelv 3 Irodalom Erich Gamma, Richard Helm, Ralph

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

Maximum kiválasztás tömbben

Maximum kiválasztás tömbben ELEMI ALKALMAZÁSOK FEJLESZTÉSE I. Maximum kiválasztás tömbben Készítette: Szabóné Nacsa Rozália Gregorics Tibor tömb létrehozási módozatok maximum kiválasztás kódolása for ciklus adatellenőrzés do-while

Részletesebben

5. Gyakorlat. struct diak {

5. Gyakorlat. struct diak { Rövid elméleti összefoglaló 5. Gyakorlat Felhasználó által definiált adattípusok: A typedef egy speciális tárolási osztály, mellyel érvényes típusokhoz szinonim nevet rendelhetünk. typedef létező_típus

Részletesebben

4. Programozási nyelvek osztályozása. Amatőr és professzionális

4. Programozási nyelvek osztályozása. Amatőr és professzionális 4. Programozási nyelvek osztályozása. Amatőr és professzionális programozási nyelvek. Számítási modellek (Neumann-elvű, automataelvű, funkcionális, logikai). Programozási nyelvekkel kapcsolatos fogalmak

Részletesebben

Programozás. C++ osztályok. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.

Programozás. C++ osztályok. Fodor Attila. Pannon Egyetem Műszaki Informatikai Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein. Programozás C++ osztályok 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 25. Osztályok C++ osztályok Bevezetés Objektum-orientáltság

Részletesebben

ADATBÁZISKEZELÉS ADATBÁZIS

ADATBÁZISKEZELÉS ADATBÁZIS ADATBÁZISKEZELÉS 1 ADATBÁZIS Az adatbázis adott (meghatározott) témakörre vagy célra vonatkozó adatok gyűjteménye. - Pl. A megrendelések nyomon követése kereskedelemben. Könyvek nyilvántartása egy könyvtárban.

Részletesebben

Egységes és objektumközpontú adatbázis-kezelés (2. rész)

Egységes és objektumközpontú adatbázis-kezelés (2. rész) Egységes és objektumközpontú adatbázis-kezelés (2. rész) A folytatásában a bemutatjuk, hogyan kezelhetünk Qt rendszer alatt SQL sormutatót, és készíthetünk grafikus felületet programoknak a Qt Designer

Részletesebben

Bevezetés a programozásba 2

Bevezetés a programozásba 2 Bevezetés a programozásba 2 7. Előadás: STL konténerek, sablonok http://digitus.itk.ppke.hu/~flugi/ Vector int int main() { vector v(10); int int sum=0; for for (int i=0;i

Részletesebben

Programozás C++ -ban

Programozás C++ -ban Programozás C++ -ban 4. Bevezetés az osztályokba 4.1 Az adatokhoz való hozzáférés ellenőrzése Egy C programban a struktúrák minden része mindig elérhető. Ugyanakkor ez nem a legkedvezőbb helyzet. Több

Részletesebben

1. Az utasítás beolvasása a processzorba

1. Az utasítás beolvasása a processzorba A MIKROPROCESSZOR A mikroprocesszor olyan nagy bonyolultságú félvezető eszköz, amely a digitális számítógép központi egységének a feladatait végzi el. Dekódolja az uatasításokat, vezérli a műveletek elvégzéséhez

Részletesebben

Összefüggő szakmai gyakorlat témakörei. 9-11. évfolyam. 9. évfolyam

Összefüggő szakmai gyakorlat témakörei. 9-11. évfolyam. 9. évfolyam 3700 Kazincbarcika, Lini István -. E-mail: titkar@irinyi-ref.hu Tel: (06-8) 3-; Fax: (06-8) 3-763 Összefüggő szakmai gyakorlat témakörei 9-. évfolyam XIII. Informatika ágazat 9. évfolyam Információtechnológiai

Részletesebben

Bánsághi Anna anna.bansaghi@mamikon.net

Bánsághi Anna anna.bansaghi@mamikon.net ESEMÉNYVEZÉRELT PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 1. ELŐADÁS - C# ÁTTEKINTÉS - 1 2015 Bánsághi Anna 1 of 84 TEMATIKA I. C# ÁTTEKINTÉS II. WPF III. Modern UI 2015 Bánsághi Anna 2 of 84

Részletesebben

Összefüggő szakmai gyakorlat témakörei. 13 évfolyam. Információtechnológiai gyakorlat 50 óra

Összefüggő szakmai gyakorlat témakörei. 13 évfolyam. Információtechnológiai gyakorlat 50 óra 700 Kazincbarcika, Lini István. Email: titkar@irinyiref.hu Tel: (0648) 4; Fax: (0648) 76 Összefüggő szakmai gyakorlat témakörei évfolyam Informatikai rendszergazda 54 48 04 Információtechnológiai gyakorlat

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 13. előadás Throwable Error Exception RuntimeException IOException Saját (általában) Nem ellenörzött kivételek (Unchecked

Részletesebben

C# osztályok. Krizsán Zoltán

C# osztályok. Krizsán Zoltán C# osztályok Krizsán Zoltán Fogalma Önálló hatáskőrrel rendelkező, absztrakt adattípus, amely több, különböző elemet tartalmazhat. Minden esetben a heap-en jön létre! A programozó hozza létre, de a GC

Részletesebben

Programozás II. labor

Programozás II. labor Programozás II. labor 1. rész Programozási tételek Öröklődés Interfészek Eseménykezelés Kivételkezelés Visszalépéses keresés Programozás II. Programozási tételek OOP alapok ismétlése Öröklődés Öröklődés

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 5. Előadás Dr. Bécsi Tamás Kivételkezelés try Azon utasítások kerülnek ide, melyek hibát okozhatnak, kivételkezelést igényelnek catch( típus [név]) Adott kivételtípus esetén

Részletesebben

Alkalmazott modul: Programozás

Alkalmazott modul: Programozás Eötvös Loránd Tudományegyetem Informatikai Kar Alkalmazott modul: Programozás Feladatgyűjtemény Összeállította: Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Frissítve: 2015.

Részletesebben

Programozás II. 6.Öröklés Dr. Iványi Péter

Programozás II. 6.Öröklés Dr. Iványi Péter Programozás II. 6.Öröklés Dr. Iványi Péter 1 Öröklés Programozók lusta emberek, nem szeretnék valamit kétszer leírni Miért veszélyes? Nem hatékony Újra kell tárolni a kódot, újra le kell fordítani Karbantartás

Részletesebben

500. AA Megoldó Alfréd AA 500.

500. AA Megoldó Alfréd AA 500. Programozás alapjai 2. NZH 2010.05.13. gyakorlat: / Hiány:0 ZH:0 MEGOLD IB.027/51. Hftest: 0 Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti, hogy minden

Részletesebben

Gate Control okostelefon-alkalmazás

Gate Control okostelefon-alkalmazás Gate Control okostelefon-alkalmazás GSM Gate Control Pro 20/1000 modulokhoz HASZNÁLATI ÚTMUTATÓ v1.0.0.0 és újabb alkalmazásverzióhoz Dokumentumverzió: v1.42 2015.09.23 Termék rövid leírása A GSM Gate

Részletesebben

CellCom. Szoftver leírás

CellCom. Szoftver leírás CellCom Szoftver leírás A vezérlő szoftver bemutatása 2 www.lenyo.hu Tartalom LCC vezérlőszoftver 5 Rendszerkövetelmények 5 Telepítés 5 Indítás 7 Eltávolítás, újratelepítés és javítás 8 Kulcskezelés 8

Részletesebben

Szoftverprototípus készítése. Szoftverprototípus készítése. Szoftverprototípus készítése 2011.10.23.

Szoftverprototípus készítése. Szoftverprototípus készítése. Szoftverprototípus készítése 2011.10.23. Szoftverprototípus készítése Dr. Mileff Péter A prototípus fogalma: a szoftverrendszer kezdeti verziója Mi a célja? Arra használják, hogy bemutassák a koncepciókat, kipróbálják a tervezési opciókat, jobban

Részletesebben

Széchenyi István Szakképző Iskola

Széchenyi István Szakképző Iskola A SZAKKÖZÉPISKOLAI SZAKMACSOPORTOS ALAPOZÓ OKTATÁS ISKOLAI PROGRAMJA 9 12. évfolyam Érvényes a 2003-2004-es tanévtől felmenő rendszerben Átdolgozva, utolsó módosítás: 2004. április 26. A szakmacsoportos

Részletesebben

Szervlet-JSP együttműködés

Szervlet-JSP együttműködés Java programozási nyelv 2007-2008/ősz 10. óra Szervlet-JSP együttműködés Kérés továbbítás technikái legradi.gabor@nik.bmf.hu szenasi.sandor@nik.bmf.hu Szervlet-JSP együttműködés Témakörök Osztálykönyvtár

Részletesebben

Gate Control okostelefon-alkalmazás

Gate Control okostelefon-alkalmazás Gate Control okostelefon-alkalmazás GSM Gate Control Pro 20/1000 modulokhoz HASZNÁLATI ÚTMUTATÓ v1.1.1.0 és újabb alkalmazásverzióhoz Dokumentumverzió: v1.5 2016.05.18 Termék rövid leírása A GSM Gate Control

Részletesebben

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

Bánsághi Anna anna.bansaghi@mamikon.net. 1 of 67 SZOFTVERTECHNOLÓGIA Bánsághi Anna anna.bansaghi@mamikon.net 5. ELŐADÁS - RENDSZERTERVEZÉS 1 1 of 67 TEMATIKA I. SZOFTVERTECHNOLÓGIA ALTERÜLETEI II. KÖVETELMÉNY MENEDZSMENT III. RENDSZERMODELLEK IV. RENDSZERARCHITEKTÚRÁK

Részletesebben

Adatstruktúrák, algoritmusok, objektumok

Adatstruktúrák, algoritmusok, objektumok Adatstruktúrák, algoritmusok, objektumok 3. Az objektumorientált paradigma alapelemei Objektum Osztály Példányosítás A konstruktor és a destruktor Osztályok közötti kapcsolatok 1 Objektum Definíció Az

Részletesebben

C# feladatok gyűjteménye

C# feladatok gyűjteménye C# feladatok gyűjteménye Készítette: Fehérvári Károly I6YF6E Informatika tanár ma levelező tagozat 1) Feladat: ALAPMŰVELETEK Készítsünk programot, amely bekér két egész számot. Majd kiszámolja a két szám

Részletesebben

Felhasználói kézikönyv

Felhasználói kézikönyv NEPTUN-@Napló Felhasználói kézikönyv NEPTUN-@Napló Elektronikus Iskolai Osztálynapló Bevezetés Tartalom Bevezetés... 6 Általános funkciók... 6 Dokumentumok... 7 Milyen eszközökön használható a program?...

Részletesebben

10. évfolyam 105 óra 10817-12 azonosító számú Hálózatok, programozás és adatbázis-kezelés 105 óra Adatbázis- és szoftverfejlesztés gyakorlat tantárgy

10. évfolyam 105 óra 10817-12 azonosító számú Hálózatok, programozás és adatbázis-kezelés 105 óra Adatbázis- és szoftverfejlesztés gyakorlat tantárgy 9. évfolyam 70 óra 10815-12 azonosító számú Információtechnológiai alapok gyakorlat 70 óra Információtechnológiai gyakorlat tantárgy 70 óra Számítógép összeszerelése Számítógép szétszerelése. Pontos konfiguráció

Részletesebben

INFORMATIKAI ALAPISMERETEK

INFORMATIKAI ALAPISMERETEK Informatikai alapismeretek középszint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM

Részletesebben

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN

Objektum Orientált Programozás. 11. Kivételkezelés 44/1B IT MAN Objektum Orientált Programozás 11. Kivételkezelés 44/1B IT MAN B IT v: 2016.05.03 MAN Pici elmélet A Java kivételkezelésének célja a programfutás során keletkezett hibák kiszűrése és megfelelő kezelése.

Részletesebben

C++ programozási nyelv

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

Részletesebben

Modellalkotás UML-ben

Modellalkotás UML-ben Modellalkotás UML-ben Modellalkotás UML-ben A Unified Modeling Language (UML) egy grafikus modellező nyelv, amely lehetőséget nyújt egy megoldandó probléma specifikációjának leírására absztrakt szinten,

Részletesebben

Előszó. Bevezetés. Java objektumok leképzése relációs adatbázisokra OJB-vel Viczián István (viczus@freemail.hu) Viczián István

Előszó. Bevezetés. Java objektumok leképzése relációs adatbázisokra OJB-vel Viczián István (viczus@freemail.hu) Viczián István Java objektumok leképzése relációs adatbázisokra -vel Viczián István (viczus@freemail.hu) Előszó E cikk olyan haladó programozóknak nyújt segítséget, kik tisztában vannak a Java nyelvvel, és többször is

Részletesebben

Bevezetés a programozásba I.

Bevezetés a programozásba I. Bevezetés a programozásba I. 6. gyakorlat C++ alapok, szövegkezelés Surányi Márton PPKE-ITK 2010.10.12. Forrásfájlok: *.cpp fájlok Fordítás: a folyamat, amikor a forrásfájlból futtatható állományt állítunk

Részletesebben

1.sz melléklet Nyári gyakorlat teljesítésének igazolása Hiányzások

1.sz melléklet Nyári gyakorlat teljesítésének igazolása Hiányzások 1.sz melléklet Nyári gyakorlat teljesítésének igazolása Hiányzások - Az összefüggő szakmai gyakorlatról hiányozni nem lehet. Rendkívüli, nem tervezhető esemény esetén az igazgatóhelyettest kell értesíteni.

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

0.2.1 Operátorok túlterhelése (műveletek definiálhatók felhaszn. típusokra) Kutya. Eb1. Eb2. Név (txt): Rex. Blöki. Német juhász 3

0.2.1 Operátorok túlterhelése (műveletek definiálhatók felhaszn. típusokra) Kutya. Eb1. Eb2. Név (txt): Rex. Blöki. Német juhász 3 0 Az objektum-orientáltság 0.1 Objektum fogalma Egy rendszer egyedileg azonosítható szereplője adatokkal és működéssel. Egységbezárás (encapsulation) - viselkedés a külvilág felé - belső struktúra (kívülről

Részletesebben

PROJEKTTERV SABLON. ALAPADATOK A PROJEKT CÍME Németország? Anglia? Irány a virtuális sztráda!

PROJEKTTERV SABLON. ALAPADATOK A PROJEKT CÍME Németország? Anglia? Irány a virtuális sztráda! PROJEKTTERV SABLON ALAPADATOK A PROJEKT CÍME Németország? Anglia? Irány a virtuális sztráda! ÖSSZEFOGLALÁS Iskolánkban minden évben április végén hagyományosan nyelvi napot tartunk, ahol a gyerekek számot

Részletesebben

3. Osztályok II. Programozás II

3. Osztályok II. Programozás II 3. Osztályok II. Programozás II Bevezető feladat Írj egy Nevsor osztályt, amely legfeljebb adott mennyiségű nevet képes eltárolni. A maximálisan tárolható nevek számát a konstruktorban adjuk meg. Az osztályt

Részletesebben

Programozás II gyakorlat. 6. Polimorfizmus

Programozás II gyakorlat. 6. Polimorfizmus Programozás II gyakorlat 6. Polimorfizmus Típuskonverziók C-ben: void * ptr; int * ptr_i = (int*)ptr; Ez működik C++-ban is. Használjuk inkább ezt: int * ptr_i = static_cast(ptr); Csak egymással

Részletesebben

A tömörítési eljárás megkezdéséhez jelöljük ki a tömöríteni kívánt fájlokat vagy mappát.

A tömörítési eljárás megkezdéséhez jelöljük ki a tömöríteni kívánt fájlokat vagy mappát. Operációs rendszerek Windows Xp (13-16 óra) FÁJLTÖMÖRÍTŐ PROGRAMOK KEZELÉSE A tömörítés fogalma A tömörítő eljárás során az állomány felhasználásának szempontjából két műveletet hajtunk végre. Az állományok

Részletesebben

INFORMATIKAI ALAPISMERETEK

INFORMATIKAI ALAPISMERETEK Informatikai alapismeretek emelt szint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK EMELT SZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM

Részletesebben