Analízis modell kidolgozása
|
|
- Henrik Szabó
- 8 évvel ezelőtt
- Látták:
Átírás
1 Analízis modell kidolgozása 100 Generalis faliora Konzulens: Szabó András Csapattagok: Kenéz Tamás TLSXNP Kiss Gergely KNJU43 Papp Gergely L584UF Rostás Gábor N7WH3P március 16.
2 Objektum katalógus Container: Alaposztály: nincs Példányok: 0..n Komponensek: 0..n Package Változók: objectlist List tárolja a rajta lévő objektumokat Felelősségek: boolean hascollided(object:object) ellenőrzi, hogy ütköztek-e csomagok Ez az osztály a futószalagrendszer elemeinek őse. Production_Line: Alaposztály: Container Példányok: 0..n Komponensek: nincs Változók: Direction int a futószalag mozgásirányát tárolja length int a futószalag hosszát tárolja nextline Object tárolja, hogy a csomag a futószalag végéhez érve hova adódik át Felelősségek: void prodpackages(value:int) ez gondoskodik a csomagok előrelökéséről Egy tetszőleges futószalagot reprezentáló objektum. Switch: Alaposztály: Container Példányok: 0..n Komponensek: nincs Változók: nextlines Object[*] tárolja, hogy a váltó hova továbbíthatja a csomagokat actualdirection int a váltó által kiválasztott aktuális irány Generalis faliora március 16.
3 Felelősségek: void toggle() az aktuális irányt változtatja void prodpackage() gondoskodik a csomagok előrelökéséről Egy tetszőleges váltót reprezentáló objektum. In_Truck: Alaposztály: nincs Példányok: 1 Komponensek: nincs Változók: nextline Object tárolja, hogy melyik futószalagra kerülnek a teherautóról a csomagok Packages List a teherautón lévő csomagokat tárolja Felelősségek: A csomagok elindítása (időzítés kérése a Timer-től) A bejövő teherautót reprezentáló objektum. Out_Truck: Alaposztály: nincs Példányok: 1..n Komponensek: nincs Változók: available boolean ha ez hamis, akkor a teherautó már nincs a pályán Felelősségek: Csomag fogadása esetén pontszám regisztrálása A kimenő teherautót reprezentáló objektum. Package: Alaposztály: Példányok: Komponensek: nincs 1..n nincs Generalis faliora március 16.
4 Változók: color int tárolja a csomag színét perishable int ez jelzi a romlandóságát a csomagnak broken boolean ez a flag jelzi, hogy összetört-e a csomag fallen boolean ez jelzi, hogy a csomag leesett-e blown boolean jelzi, hogy felrobbant-e a csomag blowtime int tárolja, hogy mennyi idő alatt robban fel a csomag Felelősségek: void getcolor(color:int) lekéri a csomag színét void setcolor(color:int) beállítja a csomag színét Egy csomagot megvalósító objektum. Timer: Alaposztály: nincs Példányok: 1 Komponensek: nincs Változók: objectlist List tárolja az időzítésre beregisztrált objektumokat Felelősségek: void tick() az időzítő által mutatott időt növeli A modellben bekövetkező események időzítését biztosító objektum. Generalis faliora március 16.
5 Osztályok leírása Container Azoknak az absztrakt alaposztálya ez, akik csomagot mozgatnak a modellben, azaz a futószalagé és a váltóé. Az ebben levő egyetlen adattag egy dinamikus objektumlista, amely az aktuális objektumon található csomagokat tárolja. A hascollided metódus alkalmas annak a megvizsgálására, hogy a paraméterként átadott csomag ütközik-e valamivel. Szoros összefüggésben lesz a csomagátadással csak a csomag átadásakor fog meghívódni. Ez a főosztály ismeri a TimerSet interface-t, továbbá implementálja a Timing interface-t, melyek arra szolgálnak, hogy időzítéseket lehessen beállítani az egyes objektumokra. Az időzítésről bővebben a Timer objektumnál. Implementálja továbbá a PackageListener inertfészt, amely a csomagok menedzselésére szolgál. Ezen az interfészen keresztül lehet csomagot hozzáadni és kivenni az egyes objektumokból. Production_line A Conatiner-ből származó, egy darab futószalagot reprezentáló objektum. Jellemzi az iránya (észak/dél/kelet/nyugat), a hossza és a rákövetkező objektum. (Itt és a továbbiakban is a rákövetkező objektum azt a futószalagot, váltót vagy kimenő teherautót jelenti, amelyiknek (a pálya elrendezése szerint) a csomagot továbbítania kell.) A prodpackages metódusa szolgál a modell előrehaladására: ez löködi a csomagokat a futószalagon. A rákövetkező objektumot pedig a setnextline metódussal lehet beállítani. Switch Ez is a Containerből származik, de ő egy váltót reprezentál. Adattagjai a rákövetkező objektumok tömbje (lehet tömböt használni, hiszen maximum három futószalag mehet ki a váltóból), és az éppen aktuális irány, amerre a váltó áll. Generalis faliora március 16.
6 A toggle metódusával lehet a váltani ez mindig a következő érvényes helyzetbe állítja a váltót. A setnextlines metódussal pedig a rákövetkező futószalagok tömbjét lehet beállítani. In_Truck A beérkező teherautót reprezentáló osztály. Célszerűen egy példánya lesz a játék során. Jellemzik őt a platóján helyet foglaló csomagok (dinamikus tömbben, List-ben tárolva), valamint a rákövetkező objektum, ahová a csomagok leesnek róla. Out_Truck A kimenő teherautók osztálya. Jellemzi a színe és hogy elérhető-e. (A teherautók, ha megfelelő számú és színű csomagot kaptak, elhagyják a játékteret azaz az available flaget hamisra állítják.) Timer Óra objektum; az időzítésekért felel. (A modellben az órának semmi köze nincs a fizikai időhöz vö.: logikai óra). Ismeri a Timing interface-t és implementálja a TimerSet interface-t. Ha egy objektum időzítést kér az órától, akkor meghívja az órának a TimerSet interface-ben definiált addwatch metódusát, mellyel beregisztrálja magát (vagy egy másik objektumot) az óraobjektum listájába. Ha már többé nincs szükség az időzítésre (mert például a romlandó csomag egy kimenő teherautóra ért), akkor a removewatch metódussal lehet az időzítést törölni. Az óra tick metódusával lehet a modell előrehaladását elérni, ez eggyel csökkenti minden egyes benne tárolt objektum óráját. A gettimeleft metódus pedig visszaadja a paraméterül megadott objektum hátralévő idejét. Ha egy objektum időzítése lejár, akkor meghívja ennek az objektumnak a Timing interface-ben definiált timeoutaction metódusát, amely majd gondoskodik az ilyenkor szükséges tevékenységekről. Generalis faliora március 16.
7 Az időzítéshez használt objektumreferenciákat egy listában tárolja; a lista minden eleme egy kételemű tömb (két Objektum-referenciával), az egyik elem tárolja a lejárati időt, a másik pedig a referenciát az objektumra. Package Egy csomagot reprezentáló objektum. Jellemzi a színe, valamint négy flag: perishable (romlandó-e), broken (ráestek-e), fallen (leesett-e), valamint blown (felrobbant-e). Az utóbbi hármat a futószalag tudja átállítani, és ha ezek akármelyike igaz lesz, akkor a csomag a következő frissítés alkalmával eltűnik a modellből. Ha a perishable flag igaz, akkor értelme van a blowtime adattagnak: ez tárolja romlandó csomag esetén a romlási időt. A getcolor metódussal lehet a csomag színét lekérdezni, a setcolor metódussal pedig beállítani azt. Generalis faliora március 16.
8 Statikus struktúradiagram Generalis faliora március 16.
9 Szekvencia-diagramok Az inicializálás szekvencia-diagramja Feladata: a modell alapállapotba hozása, előkészítése. Működés: A Model szülőobjektum létrehozza a Timer időzítő objektumot (mely szingleton objektum a rendszerben), a Timer feladata a modell elemeinek időzítése. A Model objektum létrehozza a modell elemeit, létrehozza a bejövő teherautót, a futószalagokat, a váltókat, és a kimenő teherautókat. A bejövő teherautót feltölti a pályában definiált színű és minőségű csomagokkal. Mindezek után összelinkeli a Generalis faliora március 16.
10 pályának megfelelően a teherautókat, futószalagokat, váltókat azok setnextline és setnextlines metódusai segítségével. Végül bejegyzi a Timer-ben a pályaelemek első időzítéseit. Ezek után a Model-t tartalmazó fő osztály és majd a grafikus és vezérlő komponensek folytathatják működésüket, a játék modellje inicializálva van. A váltás szekvencia-diagramja Feladata: a váltó átállítása. Működése: a főosztályból a Model objektumba érkezik egy toggle() kérés, mely a megfelelő váltó wrapperéhez továbbítódik. A váltó wrappere meghívja a modellbeli váltó toggle() metódusát, mely hatására az átvált a következő futószalagra. A leesés, az összetörés és a csomagtovábbítás szekvenciadiagramja Generalis faliora március 16.
11 Feladata: a csomag néhány eseményének összefoglalása (interface-eken keresztül). Működése: Csomagtovábbítás esetén a forrásobjektum a PackageListener interface-en keresztül adja át a csomagot a célobjektumnak. Ha a csomag leesik, akkor a célobjektum NULL, így a csomag egyszerűen eltűnik a modellből. Azt is itt tudjuk ellenőrizni, ha a csomagra ráesnek: mivel csomag csak egy helyen, a szalag elején érkezhet a futószalagra, így ezt elég ellenőrizni, ha új csomag érkezik egy futószalagra. A csapat megfontolt egy sokkal objektumorientáltabb megoldást ennél (a flageknél). Ennek a lényege az lett volna, hogy ahelyett, hogy flagekkel jelezzük, hogy egy csomag leesett-e, egy univerzális csomag-evő objektumot regisztráltunk volna a semmibe vezető futószalagok és váltók végéhez. Az lett volna ezzel a probléma (bár nagyon szép megoldás lenne), hogy összesen egy flaget spóroltunk volna meg (fallen), másrészt a feladat egyszerűségénél fogva ezt a megoldást feleslegesnek ítéltük. A csapat tagjai természetesen tisztában vannak azzal, hogy nagyobb rendszer esetén ez elkerülhetetlen fejlesztés lenne. Romlandó csomag első átadásának szekvencia-diagramja Feladata: Romlandó csomag esetén az időzítés beállítása. Működése: A bejövő teherautó, mielőtt még a szokásos módon továbbítaná a csomagot, a TimerSet interface-en keresztül beállít egy időzítést a csomagra. Generalis faliora március 16.
12 Csomag felrobbanásának szekvencia-diagramja Feladata: a csomag felrobbantása. Működése: A fent részletezett módon a bejövő teherautó beállít egy időzítést a csomagra, majd a Timer ennek a bizonyos időzítésnek a lejártakor szól a csomagnak a Timing interface-en keresztül, hogy robbanjon fel (pontosabban meghívja annak a timeoutaction metódusát, aztán a csomag majd teszi a dolgát). Generalis faliora március 16.
13 Állapotdiagramok Szerencsére egy állapotdiagramunk sincs. Generalis faliora március 16.
14 Napló A napló tartalmazza, hogy az egyes csapattagok mit és mikor tevékenykedtek a projektért Kenéz, Kiss, Papp, Rostás Kenéz, Kiss, Papp, Rostás Megbeszélés: Objektummodell tárgyalása A heti feladatok átbeszélése és kiosztása Kiss Szekvencia-diagramok megrajzolása Kenéz, Rostás Objektumkatalógus megírása Kiss, Rostás Papp Hivatalos megbeszélésen való részvétel Kiss, Papp Online konzultáció Kiss, Papp, Rostás Online konzultáció Papp Az osztályleírások elkészítése Papp A dokumentum formázása, napló megírása Kiss A dokumentum átnézése Kiss, Papp A felmerülő kérdések online megbeszélése, a dokumentum csiszolása, a hibák kijavítása Generalis faliora március 16.
Szkeleton tervezése. 100 Generalis faliora. Csapattagok: Konzulens: Szabó András. 2005. március 21.
Szkeleton tervezése 100 Generalis faliora Konzulens: Szabó András Csapattagok: Kenéz Tamás TLSXNP arachnus@tvn.hu Kiss Gergely KNJU43 6er6e1y@gmail.com Papp Gergely L584UF pg554@hszk.bme.hu Rostás Gábor
Szkeleton beadása. 100 Generalis faliora. Csapattagok: Konzulens: Szabó András. 2005. március 29.
Szkeleton beadása 100 Generalis faliora Konzulens: Szabó András Csapattagok: Kenéz Tamás TLSXNP arachnus@tvn.hu Kiss Gergely KNJU43 6er6e1y@gmail.com Papp Gergely L584UF pg554@hszk.bme.hu Rostás Gábor
é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
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
Johanyák Zsolt Csaba: Ugráló gomb oktatási segédlet Copyright 2008 Johanyák Zsolt Csaba
Ugráló gomb Készítsünk egy egyszerű játékprogramot, ami egy mozgó nyomógombot tartalmaz. A nyomógomb beállított ideig marad egy helyben, majd az ablakon számára elhatárolt terület (panel) egy véletlenszerűen
OOP: Java 8.Gy: Abstract osztályok, interfészek
OOP: Java 8.Gy: Abstract osztályok, interfészek 26/1 B ITv: MAN 2019.04.03 Abszrakt metódus és absztrakt osztály. Gyakran előfordul a tervezés során, hogy egy osztály szintjén tudjuk, hogy valamilyen metódus
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
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"
Megoldás. Feladat 1. Statikus teszt Specifikáció felülvizsgálat
Megoldás Feladat 1. Statikus teszt Specifikáció felülvizsgálat A feladatban szereplő specifikáció eredeti, angol nyelvű változata egy létező eszköz leírása. Nem állítjuk, hogy az eredeti dokumentum jól
JAVA PROGRAMOZÁS 2.ELŐADÁS
Dr. Pál László, Sapientia EMTE, Csíkszereda JAVA PROGRAMOZÁS 2.ELŐADÁS 2014-2015 tavasz Tömbök, osztályok, objektumok, konstruktorok Tömbök 2 Referencia típusú változó Elemtípus Primitív Referencia: osztály,
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
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
Ugráló gomb oktatási segédlet Ugráló gomb
Ugráló gomb Készítsünk egy egyszerű játékprogramot, ami egy mozgó nyomógombot tartalmaz. A nyomógomb beállított ideig marad egy helyben, majd az ablakon számára elhatárolt terület (panel) egy véletlenszerűen
Eseménykezelés. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor.
Eseménykezelés előadás http://nik.uni-obuda.hu/sztf2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Függvénymutatókkal Származtatással Interfészekkel Egyéb
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
A követelmények leírása
A követelmények leírása Júz Kéz az indián kincskereső barlangokban gyémántra vadászik. Ehhez korlátozott mennyiségű robbanószer és élet áll rendelkezésére. A játékos feladata az indián irányítása, és a
Dokumentáció. 1. Beadandó feladat
Ballai Brigitta XG3077 gittacska91@gmail.com 2013.11.25. Dokumentáció 1. Beadandó feladat Feladat : A feladat egy kellően bonyolult osztálystruktúra megtervezése és implementálása Java nyelven. Minimális
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
inels timer Működési elv:
inels timer Ez az időzítő arra való, hogy a telefon vagy tablet felületén kézi gombokkal be lehessen állítani időzített eseményt, amely egyelőre 24 órás maximális késleltetési időtartamot tesz lehetővé.
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ő
Eseménykezelés - Lottó játék
Eseménykezelés - Lottó játék Célok: Események, eseménykezelés hátterének, fogalmainak rövid áttekintése. Eseménykezelést megvalósító nem grafikus felületű példaprogram készítése. Objektum-, statikus- és
Analízis modell kidolgozása I.
Analízis modell kidolgozása I. 65 Konzulens: Zsolnai Károly Csapattagok Balogh Péter Tamás B6E4VC b4logh.peter@gmail.com Gál István László EKCBOK galpityu@gmail.com Kárász Gábor QHTQ8N raknepseg@gmail.com
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
Kivételkezelés, beágyazott osztályok. Nyolcadik gyakorlat
Kivételkezelés, beágyazott osztályok Nyolcadik gyakorlat Kivételkezelés Nem minden hibát lehet fordítási időben megtalálni Korábban (pl. C-ben) a hibakezelést úgy oldották meg, hogy a függvény hibakódot
Szoftvertechnolo gia gyakorlat
Szoftvertechnolo gia gyakorlat Dr. Johanyák Zsolt Csaba http://johanyak.hu 1. Dependency Injection (függőség befecskendezés) tervezési minta A tervezési minta alapgondolata az, hogy egy konkrét feladatot
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
Programozási nyelvek II. JAVA
Programozási nyelvek II. JAVA 8. gyakorlat 2017. november 6-10. Általános tudnivalók A feladatmegoldás során fontos betartani az elnevezésekre és típusokra vonatkozó megszorításokat, illetve a szövegek
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
Helyes-e az alábbi kódrészlet? int i = 1; i = i * 3 + 1; int j; j = i + 1; Nem. Igen. Hányféleképpen lehet Javaban megjegyzést írni?
A "java Villa -v" parancs jelentése: A java interpreter elindítja a Villa osztály statikus main metódusát, és átadja neki paraméterként a "-v" stringet. A java interpreter elindítja először a Villa osztály
Osztálytervezés és implementációs ajánlások
Osztálytervezés és implementációs ajánlások Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 04. 24. Osztálytervezés és implementációs kérdések OTERV / 1 Osztály tervezés Egy nyelv
Java és web programozás
Budapesti Műszaki Egyetem 2015. 02. 11. 2. Előadás Mese Néhány programozási módszer: Idők kezdetén való programozás Struktúrált Moduláris Funkcionális Objektum-orientált... Mese Néhány programozási módszer:
Space Invaders Dokumenta cio
Space Invaders Dokumenta cio 0. Tartalomjegyzék 0. Tartalomjegyzék... 1 1. Követelmény feltárás... 2 1.1. Célkitűzés, projektindító dokumentum... 2 1.2. Szakterületi tartalomjegyzék... 2 1.3. Használatieset-modell,
Programozás I. 5. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar
Programozás I. 5. gyakorlat 1 Objektumorientáltság Egységbezárás és információ elrejtése (absztrakt adattípus) Adatok és rajtuk végzett műveletek egységbezárása (osztályok írása, múlt hét) Öröklődés Polimorfizmus
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
RESIDENT EVIL CODENAME: NIK
RESIDENT EVIL CODENAME: NIK Gyakorló zárthelyi dolgozat Figyelem! A feladat mennyiségre több anyagot tartalmaz, mint a zárthelyi dolgozat, amely az órán várható. Ennek oka, hogy több gyakorlásra legyen
C# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18
C# Nyelvi Elemei Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei 2013 1 / 18 Tartalomjegyzék 1 Object 2 Típusok 3 String 4 RegEx Tóth Zsolt (Miskolci Egyetem) C# Nyelvi
A Java nyelv. Dialógus ablakok. Elek Tibor
A Java nyelv Dialógus ablakok Elek Tibor Dialógus ablakok Szerepe: felbukkanó ablak (üzenet, input) Felépítése, használata majdnem ua., mint JFrame Tulajdonos: lehet tulajdonosa, amellyel együtt ikonizálódik,
Verkehrsmeldungen am UML
Verkehrsmeldungen am UML 27 Led Zeppelin Konzulens: Budai Péter Csapattagok Bodó Péter MKA2DY carter89@freemail.com Pál Tamás UVKSGJ paltamas89@gmail.com Szárnyas Gábor U944EQ szarnyasg@gmail.com 2010-05-13
Programozási Nyelvek: C++
Programozási Nyelvek: C++ Gyakorló feladatkönyv Umann Kristóf #include "CppStudent.h" int main() { CppStudent *reader = new CppStudent(); reader->readbook(); while(!reader->doesunderstand()) { reader->exercise();
OOP: Java 11.Gy: Enumok, beágyazott osztályok. 13/1 B ITv: MAN
OOP: Java 11.Gy: Enumok, beágyazott osztályok 13/1 B ITv: MAN 2019.04.24 ArrayList Rugalmas tömb A tömbök korlátai Fix méret, nem lehet menet közben megnövelni Ha túl nagyra választjuk, fölösleges helyfoglalás
Programozási nyelvek Java
Programozási nyelvek Java 2. gyakorlat Függvények Általános prototípus Módosítószavak Láthatóság: public, protected, private. Ha nem definiált, akkor úgynevezett package-private láthatóság. Lehet abstract
BME MOGI Gépészeti informatika 8.
BME MOGI Gépészeti informatika 8. 1. feladat Készítse beosztottak és vezetők munkahelyi adatait kezelő alkalmazást! A feladat megoldásához hozza létre a következő osztályokat! Beosztott osztály: adatmező
2. Beadandó feladat dokumentáció
2. Beadandó feladat dokumentáció Készítette: Giachetta Roberto E-mail: groberto@inf.elte.hu Feladat: Készítsünk programot a következő memóriajátékhoz. A játéktáblán mező foglal helyet, amelyek különböző
Szerepjáték rendszerterv
Szerepjáték rendszerterv Készítette: Ormándi Mátyás Verziószám: 2.0 Model Specification Page: 2 A program leírása: Cél: Egy szerepjáték (RPG) program megvalósítása, amelyben a játékos egy karaktert vezethet
List<String> l1 = new ArrayList<String>(); List<Object> l2 = l1; // error
Generics Egyszerűbb példák (java.util csomagból): public interface List { void add(e x); Iterator iterator(); public interface Iterator { E next(); boolean hasnext(); E - formális típusparaméter,
OOP és UML Áttekintés
OOP és UML Áttekintés Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) OOP és UML Áttekintés 2013 1 / 32 Tartalom jegyzék 1 OOP Osztály Öröklődés Interfész, Absztrakt Osztály Kivétel kezelés
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
2011.11.29. JUnit. JUnit használata. IDE támogatás. Parancssori használat. Teszt készítése. Teszt készítése
Tartalom Integrált fejlesztés Java platformon JUnit JUnit használata Tesztelési technikák Demo 2 A specifikáció alapján teszteljük a program egyes részeit, klasszikus V-modell szerint Minden olyan metódust,
Szoftvertechnológia alapjai Java előadások
Szoftvertechnológia alapjai Java előadások Förhécz András, doktorandusz e-mail: fandrew@mit.bme.hu tárgy honlap: http://home.mit.bme.hu/~fandrew/szofttech_hu.html A mai előadás tartalma: Miért pont Java?
ZH mintapélda. Feladat. Felület
ZH mintapélda Feladat Írjon Java alkalmazást, amely képes hallgatók rekordjaittárolni és azokat különbözo rendezo kulcsok szerint sorba rendezni. A program grafikus felhasználói felületén keresztül új
Smart Pointer koncepciója
Smart Pointer koncepciója ( Egyszerű Smart Pointer implementálása C++ nyelven ) Bevezetés Mik a smart pointer-ek 1? A válasz egyszerű; a smart pointer-ek olyan mutatók amik okosak. Mit is jelent ez pontosan?
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:
Enterprise JavaBeans. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem. Az Enterprise JavaBeans
Enterprise JavaBeans Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Az Enterprise JavaBeans Az Enterprise Javabeans Az Enterprise JavaBeans (EJB) server oldali komponens, amely Az üzleti
Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció
Serialization (in Java) Szerializáció Java Serialization API Standard eljárás az objektumok állapotának adatfolyamba történő kiírására (elmentésére egy bájtszekvenciába), és visszatöltésére Perzisztencia
Osztálytervezés és implementációs ajánlások
Osztálytervezés és implementációs ajánlások Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2006. 04. 24. Osztálytervezés és implementációs kérdések OTERV / 1 Osztály tervezés Egy nyelv
HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport
10-es Keressünk egy egész számokat tartalmazó négyzetes mátrixban olyan oszlopot, ahol a főátló alatti elemek mind nullák! Megolda si terv: Specifika cio : A = (mat: Z n m,ind: N, l: L) Ef =(mat = mat`)
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
Webes alkalmazások fejlesztése 10. előadás. Webszolgáltatások tesztelése (ASP.NET Core) Cserép Máté
Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése 10. előadás Webszolgáltatások tesztelése (ASP.NET Core) Cserép Máté mcserep@inf.elte.hu http://mcserep.web.elte.hu Tesztelés
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
Programozási nyelvek II.: JAVA
Programozási nyelvek II.: JAVA 6. gyakorlat 2017. október 16-20. 6. gyakorlat Programozási nyelvek II.: JAVA 1 / 1 Az 6. gyakorlat tematikája Túlterhelés - összefoglalás statikus adattagok és metódusok
Enterprise JavaBeans 1.4 platform (EJB 2.0)
Enterprise JavaBeans 1.4 platform (EJB 2.0) Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11.13. Az Enterprise JavaBeans Az Enterprise Javabeans Az Enterprise JavaBeans
Alkalmazott Modul III 6. gyakorlat. Objektumorientált programozás: öröklődés és polimorfizmus
Eötvös Loránd Tudományegyetem Természettudományi Kar Alkalmazott Modul III 6. gyakorlat : öröklődés és polimorfizmus 2011.10.25. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto
Programozási nyelvek Java
Programozási nyelvek Java 11.gyakorlat Operációsrendszertől függő tulajdonságok PATH elválasztó Unix ":" Windows ";" final String PATH_SEPARATOR = File.pathSeparator; Ugyanaz, csak karakterkent final char
Programozás 2. gyakorlat
Programozás 2. gyakorlat Kötelező programok listája Tartalom Első projektmunka feladatok (Határidő: október 15. 08:00)... 2 1. Intervallum... 2 2. Igazolvány... 3 3. Telefon... 4 4. Tanulmányi rendszer...
Java grafikai lehetőségek
Szerver oldali Java programozás 2007-08/II. 3. óra Java grafikai lehetőségek Java grafikai lehetőségek Képek generálása servletekkel szenasi.sandor@nik.bmf.hu Adatbázisok elérése Témakörök Java grafikai
Smalltalk 3. Osztályok létrehozása. Készítette: Szabó Éva
Smalltalk 3. Osztályok létrehozása Készítette: Szabó Éva Metaosztály fogalma Mint korában említettük, a Smalltalkban mindent objektumnak tekintünk. Még az osztályok is objektumok. De ha az osztály objektum,
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.
Java és web programozás
Budapesti M szaki Egyetem 2013. szeptember 18. 2. El adás Komplex szám public class Complex { private float repart_; private float impart_; public Complex() { repart_ = 0; impart_ = 0; public Complex(float
OEP Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1. Feladat. Elemzés 1
OEP Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1. Feladat Különféle élőlények egy túlélési versenyen vesznek részt. A lények egy pályán haladnak végig, ahol váltakozó terep viszonyok vannak.
1. Öröklés Rétegelés Nyilvános öröklés - isa reláció Korlátozó öröklődés - has-a reláció
1. Öröklés Az objektum orientált tervezés fontos sarkköve, az osztályok viszonyainak a megtervezése. 1.1. Rétegelés c l a s s Address {..... c l a s s Name {..... c l a s s P e r s o n { Name name ; Address
Levelezős Programozás beugró (Java) 2007. december 1.
Levelezős Programozás beugró (Java) 2007. december 1. Adott az alábbi osztály: public class Autó private String rendszám; private int teljesítmény; private boolean automata; 1. Egészítse ki az osztályt
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
OE.Prog2.Jatek.Jatekter névtéren belül készítsük el az alábbiakat: Új osztály: JatekElem. A JatekElem osztályt egészítsük ki az alábbiakkal:
1. Óra Egyszerű osztályok készítése (játéktér) Készítsük el az alapvető osztályokat, amelyekre majd a játék építkezni fog. A játék minden résztvevője a JatekElem osztály leszármazottja lesz, és mindezeket
I. Objektumorientált programozás
I. Objektumorientált programozás 1. Az objektumorientált programozás alapjai Objektumok és objektumosztályok A számítógépes programok közvetve vagy közvetlenül a körülöttünk lévô világ elemeihez illeszkednek,
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
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
Abstract osztályok és interface-ek. 7-dik gyakorlat
Abstract osztályok és interface-ek 7-dik gyakorlat Abstract metódusok és osztályok Az OO fejlesztés során olyan osztályokat is kialakíthatunk, melyeket csak továbbfejlesztésre, származtatásra lehet használni,
A gyakorlat során az alábbi ábrán látható négy entitáshoz kapcsolódó adatbevitelt fogjuk megoldani.
Vizuális programozás 1. A gyakorlat célja A gyakorlat célja a Könyvtár alkalmazás folytatása az előző gyakorlaton elkészített grafikus felület felhasználásával. Elsőként lemásoljuk az előző gyakorlat eredményeként
Pénzügyi algoritmusok
Pénzügyi algoritmusok A C++ programozás alapjai Tömbök (3. rész) Konstansok Kivételkezelés Tömbök 3. Többdimenziós tömbök Többdimenziós tömbök int a; Többdimenziós tömbök int a[5]; Többdimenziós tömbök
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
Eseményvezérelt alkalmazások fejlesztése I 11. előadás. Szoftverek tesztelése
Eötvös Loránd Tudományegyetem Informatikai Kar Eseményvezérelt alkalmazások fejlesztése I 11. előadás Szoftverek tesztelése 2014 Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto
Java. Java Message Service. ANTAL Margit. JMS API technológia. ANTAL Margit. Sapientia - EMTE
Sapientia - EMTE 2008 Az előadás célja Üzenetkommunikációs architektúrák JMS Példák Üzenet gyártó Szinkron üzenetfogyasztó Aszinkron üzenetfogyasztó Üzenetbab (message-driven bean) point-to-point modell:
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ő:
Java Server Pages - JSP. Web Technológiák. Java Server Pages - JSP. JSP lapok életciklusa
Web Technológiák Java Server Pages - JSP Répási Tibor egyetemi tanársegéd Miskolc Egyetem Infomatikai és Villamosmérnöki Tanszékcsoport (IVM) Általános Informatikai Tanszék Iroda: Inf.Int. 108. Tel: 2101
2. Beadandó feladat dokumentáció
2. Beadandó feladat dokumentáció Készítette: Giachetta Roberto E-mail: groberto@inf.elte.hu Feladat: Készítsünk programot a következő memóriajátékhoz. A játéktáblán mező foglal helyet, amelyek különböző
Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem
A Java EE 5 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2008. 04. 17. A Java EE 5 platform A Java EE 5 plattform A J2EE 1.4 után következő verzió. Alapvető továbbfejlesztési
KINDERGARTEN. 46 InFoka. Dady Róbert. Csapattagok: Konzulens:
KINDERGARTEN 46 InFoka Konzulens: Dady Róbert Csapattagok: Bors Alpár Szabolcs Z0AVHU alpijoe@sch.bme.hu Szegedi Tamás AASWGX szedzsi@sch.bme.hu Tóth Tamás EWYXK4 tommey@freemail.hu 2006. május 15. 2006.
Generikus Típusok, Kollekciók
Generikus Típusok, Kollekciók Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) Generikus Típusok, Kollekciók 2013 1 / 26 Tartalomjegyzék 1 Enumeráció 2 Generikus Típusok 3 Kollekciók System.Collections
A szerzõrõl... xi Bevezetés... xiii
TARTALOMJEGYZÉK A szerzõrõl...................................................... xi Bevezetés...................................................... xiii I. rész A Visual Basic 2005 környezet 1. óra Irány
Java felhasználói felület
Java felhasználói felület Eseménykezelés Elek Tibor Eseményosztályok Az események előfordulásakor keletkezik egy megfelelő eseményobjektum. Pl. KeyPressed vagy KeyReleased (billentyű lenyomása vagy felengedése)
ELTE SAP Excellence Center Oktatóanyag 1
Oktatóanyag 1 Oktatóanyag 2 Az oktatás folyamán használt példák a fent látható egyszerű modell implementációi. Oktatóanyag 3 A definíciós részben definiálja a fejlesztő az egyes attribútumokat, metódusokat,
Bevezető. Servlet alapgondolatok
A Java servlet technológia Fabók Zsolt Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2008. 03. 06. Servlet Bevezető Igény a dinamikus WEB tartalmakra Előzmény: CGI Sokáig
Programozás I ZH, Név:... A. csoport EHA: pont Gyakorlatvezető:...
A. csoport EHA:... 1. Készíts egy Hallgato osztályt! Tárold egy hallgató nevét, EHA kódját, valamint egy valós értékben a hallgató szorgosságát (ez 0-1 közötti érték lehet, beállításkor ellenőrizd le,
C++ programozási nyelv
C++ programozási nyelv Gyakorlat - 8. 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/12 Tartalomjegyzék Miért
Tervminták a valósidejű gyakorlatban
Tervminták a valósidejű gyakorlatban Forrás Ezeknek a diáknak a forrása a Game Programming Patterns című könyv Online elérhető a szerző oldaláról: http://gameprogrammingpatterns.com/contents.htm Game Loop
Programozási nyelvek II.: JAVA
Programozási nyelvek II.: JAVA 6. gyakorlat 2017. október 16-20. 6. gyakorlat Programozási nyelvek II.: JAVA 1 / 24 Az 6. gyakorlat tematikája túlterhelés - összefoglalás statikus adattagok és metódusok
Gyakorlati vizsgatevékenység A
Gyakorlati vizsgatevékenység A Szakképesítés azonosító száma, megnevezése: 481 04 0000 00 00 Web-programozó Vizsgarészhez rendelt követelménymodul azonosítója, megnevezése: 1189-06 Web-alkalmazás fejlesztés
Szimulációs technikák
SZÉCHENYI ISTVÁN EGYETEM Műszaki Tudományi Kar Informatikai tanszék Szimulációs technikák ( NGB_IN040_1) 2. csapat Comparator - Dokumentáció Mérnök informatikus BSc szak, nappali tagozat 2012/2013 II.
Programozás BMEKOKAA146. Dr. Bécsi Tamás 7. előadás
Programozás BMEKOKAA146 Dr. Bécsi Tamás 7. előadás AZ OOP alapelvei Egységbezárás(Encapsulation) Az adatokat es a hozzájuk tartozó eljárásokat egyetlen egységben (osztályban) kezeljük. Az osztály adatmezői
Java programozási nyelv 4. rész Osztályok II.
Java programozási nyelv 4. rész Osztályok II. 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/17 Tartalomjegyzék