FELHASZNÁLÓI FELÜLET FEJLESZTÉSE AZ EPICS RENDSZERHEZ. Kósa Márk 1, Pánovics János 1, Heinrich du Toit 2 Nyakóné Juhász Katalin 1, John Pilcher 2

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

Download "FELHASZNÁLÓI FELÜLET FEJLESZTÉSE AZ EPICS RENDSZERHEZ. Kósa Márk 1, Pánovics János 1, Heinrich du Toit 2 Nyakóné Juhász Katalin 1, John Pilcher 2"

Átírás

1 FELHASZNÁLÓI FELÜLET FEJLESZTÉSE AZ EPICS RENDSZERHEZ DEVELOPMENT OF A GRAPHICAL USER INTERFACE FOR THE EPICS SYSTEM Kósa Márk 1, Pánovics János 1, Heinrich du Toit 2 Nyakóné Juhász Katalin 1, John Pilcher 2 1 Debreceni Egyetem, Informatikai Kar, Információ Technológia Tanszék 2 ithemba Labs, Cape Town Összefoglaló A Magyar Dél-afrikai Kormányközi TéT keretében létrejött együttműködést magyar részről a Debreceni Egyetem Informatikai Kara (IK), dél-afrikai részről az ithemba Laboratory for Accelerator Based Sciences (ithemba LABS) koordinálja. A két intézet tapasztalatai és lehetőségei nagyon jól kiegészítik egymást. Az ithemba LABS-nek sok kutatási és fejlesztési projektje van, ezért állandóan biztosítania kell kísérleti eszközeinek magas szintű megbízhatóságát. Az IK nagy információtechnológiai tapasztalattal és gyakorlattal rendelkezik a számítógéprendszerek tervezésében és a szoftverfejlesztésben, illetve ezen ismeretek oktatásában, kevés lehetőség van azonban technikai problémákkal foglalkozni. A kétéves projekt egy precíziós, nagy intenzitású nyalábosztó rendszer és a hozzá tartozó nyalábcsatorna vezérléséhez és diagnosztikájához szükséges szoftverek tervezésére, fejlesztésére és tesztelésére irányul. Cikkünkben a projekt keretében eddig elkészült szoftverről és a fejlesztés során szerzett tapasztalatainkról számolunk be. Kulcsszavak EPICS, MEDM, Qt programkönyvtár, signal/slot technika, Qt plugin, nemzetköziesítés Abstract The Hungarian South African Intergovernmental Cooperation in the frame of the Hungarian Science and Technology Foundation is coordinated by the University of Debrecen, Department of Informatics (DI) from Hungarian side, and ithemba Laboratory for Accelerator Based Sciences (ithemba LABS) from South African side. The experience and facilities of these two institutes complement each other very well. ithemba LABS has a lot of research and development projects, thus it needs to provide constant availability of its equipments. DI has lots of experience and practice in computer system design and software development, as well as in education of this knowledge, but it has very little chance to deal with technical problems. This two-year project aims at designing, developing and testing sotware used to control and diagnose a high precision, high intensity beam splitter system and the belonging beam tube. In this paper we show the software made by us so far in the frame of the project and about our experience of development. Keywords EPICS, MEDM, Qt program library, signal/slot technique, Qt plugins, internationalization 1

2 1. Együttműködés a TéT keretében A Magyar Dél-afrikai Kormányközi TéT keretében létrejött együttműködést magyar részről a Debreceni Egyetem Informatikai Kara (IK), dél-afrikai részről az ithemba Laboratory for Accelerator Based Sciences (ithemba LABS) koordinálja. A két intézet tapasztalatai és lehetőségei nagyon jól kiegészítik egymást. Az ithemba LABS-nek sok kutatási és fejlesztési projektje van, ezért állandóan biztosítania kell kísérleti eszközeinek magas szintű megbízhatóságát. Az IK nagy információtechnológiai tapasztalattal és gyakorlattal rendelkezik a számítógéprendszerek tervezésében és a szoftverfejlesztésben, illetve ezen ismeretek oktatásában, kevés lehetőség van azonban technikai problémákkal foglalkozni. A kétéves projekt egy precíziós, nagy intenzitású nyalábosztó rendszer és a hozzá tartozó nyalábcsatorna vezérléséhez és diagnosztikájához szükséges szoftverek tervezésére, fejlesztésére és tesztelésére irányul. A projekt első fázisában az ithemba LABS részecskegyorsítójának vezérlésére használt programhoz (EPICS) egy új, felhasználóbarát GUI kifejlesztését tűztük ki célul, amelyhez nyílt forráskódú rendszereket szerettünk volna felhasználni. A kialakítandó szoftverrel szemben elvárás volt, hogy egy grafikus elemekkel tetszőlegesen bővíthető interfészt nyújtson az EPICS rendszerhez, ezáltal ugyanis könnyebben kielégíthetők lennének a részecskegyorsító operátorainak az igényei, valamint hogy legyen lehetőség a szoftver nemzetköziesítésére. Választásunk azért esett a Qt grafikus programkönyvtárra, mert a signal/slot technológia segítségével szabványos módon tudjuk megoldani az EPICS folyamatváltozói (process variable, PV) és a grafikus elemek közötti kapcsolatot, a beépíthető modulok (plugin) biztosítják a könnyű bővíthetőséget, ráadásul a Qt hatékony eszközöket nyújt a különböző nyelvek közötti váltáshoz is. 2. Az EPICS rendszer Az Experimental Physics and Industrial Control System (magyarul: kísérleti fizikai és ipari vezérlő rendszer, röviden EPICS) szoftveres eszközök és alkalmazások olyan együttese, amely szoftveres infrastruktúrát biztosít elosztott vezérlő rendszerek építéséhez, részecskegyorsítók vagy nagy teleszkópok működtetéséhez és komplex kísérletek vezérléséhez. Az ilyen elosztott vezérlő rendszerek tipikusan több tíz, vagy akár több száz számítógépből állnak, amelyek hálózatba vannak kapcsolva, egyrészt ezzel biztosítva közöttük a kommunikációt, másrészt pedig hogy egy központi vezérlőből vagy akár az internetről vezérelhessük a rendszer különböző részeit, illetve hogy visszajelzést kaphassunk tőlük. Az EPICS a kliens/szerver és a publish/subscribe (közzétesz és előfizet) technikákat használja a számítógépek közötti kommunikáció során. A legtöbb szerver (amelyeket input/output controllernek, IOC-nek nevezünk) valós I/O-t és helyi vezérlő feladatokat hajt végre, és a klienseknek közzétesz bizonyos információkat a Channel Access (CA) hálózati protokoll segítségével PV-ken keresztül. A CA-t az olyan nagy sávszélességet igénylő, valós idejű hálózati alkalmazásokra optimalizálták, mint amilyen az EPICS is, ez az egyik oka, amiért több száz számítógépet magában foglaló vezérlő rendszerek építéséhez is használható. Az Advanced Photon Source (APS) intézménynél az EPICS-et több rendszer vezérlésére is használják. Körülbelül 250 IOC van (főleg Motorola VME kártyák MC680x0 és PowerPC processzorokkal, amelyek vxworks operációs rendszert futtatnak, de egyre több IOC már Linuxot, MacOS-t és RTEMS-et futtat), amelyek közvetlenül vagy közvetetten irányítják 2

3 csaknem az összes gépi műveletet, míg a vezérlőben 40 darab Sun munkaállomás és szerver biztosítja a magas szintű vezérlést, és nyújt felületet az operátoroknak, valamint az adatok archiválását, naplózását és elemzését is ezek végzik. A mérnökök és fizikusok számára egy Channel Access Gateway biztosít lehetőséget arra, hogy az IOC-ktől (és az irányított eszközöktől) biztonságos távolságban, az épület más részeiben vizsgálhassák az IOC-k aktuális állapotát, de megakadályozza, hogy illetéktelen módosításokat végezzenek a működő rendszerben. Sok esetben a mérnökök biztonságos internetkapcsolaton keresztül otthonról is felderíthetik és kijavíthatják a rendszerben fellépő hibákat. Az EPICS-nek megbízhatónak kell lennie, és biztosítania kell az intézményeknek, hogy a kapott vezérlő rendszer karbantartható és könnyen frissíthető legyen. Az APS-nél az említett több mint 200 IOC legtöbbjének meghibásodása vagy leállása azt eredményezheti, hogy az APS gyorsítója eldobja a sugarat, sőt bizonyos esetekben egy hibás output egyes eszközök meghibásodását is okozhatja, amelynek javítása több ezer dollárba kerülhet, és több napot, vagy akár heteket is igénybe vehet. Az IOC-knek folyamatosan kell működniük hónapokon keresztül újraindítás nélkül, ezért az EPICS megbízhatósága segíti az APS-t a sugár 95%-os vagy jobb rendelkezésre állásának biztosításában. 1. ábra Az EPICS rendszer honlapja 3

4 Eredetileg az összes EPICS IOC-nek a Wind River wxworks valós idejű operációs rendszerét kellett futtatnia, de 2004 óta lehetőség van GNU/Linuxot, Solarist, MS Windowst, MacOS-t és RTEMS-et is futtatni. Rendelkezésre állnak olyan hordozható szoftverek is, amelyek lehetővé teszik, hogy az EPICS-től eltérő vezérlő rendszereket CA szerverekként használhassunk. A CA kliensek mindig is számítógépek és operációs rendszerek széles skáláján működtek a legkedveltebbek a Unix, a GNU/Linux, a Windows, az RTEMS és a vxworks. Az EPICS-et eredetileg a Los Alamos National Laboratory és az Argonne National Laboratory fejlesztették ki, ma pedig már számos tudományos intézmény használja az egész világon. Ilyen például a claytoni (Ausztrália) Australian Synchrotron, a berlini (Németország) Berlin Electron Synchrotron, a villigeni (Svájc) Swiss Light Source, a Newport News-i (USA) Jefferson Laboratory, a padovai (Olaszország) Laboratori Nazionali di Legnaro, a didcoti (Nagy Britannia) Diamond Light Source és az tsukubai (Japán) KEK B-Factory. Az EPICS-et ma már ezen csoportok egymással együttműködve fejlesztik, és megosztják egymás között az I/O eszközök támogatását és a kliens alkalmazásokat. 3. A Qt programkönyvtár A Qt egy keresztplatformos alkalmazói keretrendszer asztali és beágyazott fejlesztésekhez. Tartalmaz egy intuitív API-t, egy gazdag C++ osztálykönyvtárat, integrált eszközöket GUI-k fejlesztéséhez és a nemzetköziesítéshez, valamint Java és C++ fejlesztői támogatást. A Qt lehetővé teszi, hogy a forráskód újraírása nélkül olyan alkalmazásokat készítsünk, amelyek különböző asztali operációs rendszereken és beágyazott eszközökön futnak A signal/slot mechanizmus A signalokat és slotokat objektumok közötti kommunikációra használják. A signal/slot mechanizmus a Qt központi eszköze, és valószínűleg ez az a rész, amely a leginkább különbözik a más keretrendszerek által biztosított eszközöktől. Egy GUI programozásánál, amikor módosítunk egy widgetet (a GUI egy tetszőleges elemét), gyakran szeretnénk, hogy erről a módosításról egy másik widget is értesüljön. Általánosabban azt szeretnénk, hogy bármilyen típusú objektum bármilyen típusú objektummal tudjon kommunikálni. Például ha a felhasználó rákattint a Bezár gombra, vélhetően azt szeretnénk, hogy meghívódjon az ablak close() metódusa. A régebbi eszköztárak ezt a fajta kommunikációt az úgynevezett callback mechanizmus segítségével valósították meg. A callback nem más mint egy függvénymutató, tehát ha azt szeretnénk, hogy egy feldolgozó függvény értesítsen minket valamilyen eseményről, akkor át kell adnunk neki egy másik függvényre mutató pointert (callback). Ezután a feldolgozó függvény meghívja ezt a callbacket, amikor szükséges. Ennek a mechanizmusnak két alapvető hátránya van. Egyrészt is nem típusbiztosak: soha nem lehetünk biztosak benne, hogy a feldolgozó függvény a callbacket megfelelő paraméterekkel fogja meghívni. Másrészt a callback szorosan kapcsolódik a feldolgozó függvényhez, hiszen a feldolgozó függvénynek tudnia kell, melyik callbacket kell meghívni. A Qt-ben van egy másik lehetőség: a signalok és slotok használata. Bizonyos események bekövetkezésekor kiváltunk egy signalt. A Qt widgetjei számos előre definiált signallal rendelkeznek, de bármikor származtathatunk új widgeteket az eredetiekből, hogy saját signalokkal egészítsük ki őket. A slot egy olyan függvény, amely egy bizonyos signalra reagálva 4

5 hívódik meg. A Qt widgetjei számos előre definiált slottal rendelkeznek, de általános gyakorlat, hogy új widgeteket származtatunk az eredetiekből, hogy saját slotokkal egészítsük ki őket, hogy kezelhessük a számunkra érdekes signalokat. A signal/slot mechanizmus típusbiztos: a signal specifikációjának meg kell egyeznie a fogadó slot specifikációjával. Mivel a specifikációk kompatibilisek, a fordítóprogram segíthet felfedezni a típuskeveredéseket. A signalok és slotok lazán kapcsolódnak egymáshoz: az az osztály, amelyik kiváltja a signalt, nem is tudja és nem is érdekli, hogy mely slotok fogják azt kezelni. A Qt signal/slot mechanizmusa biztosítja, hogy ha összekötünk egy signalt egy slottal, akkor a slot megfelelő időben meghívódjon a signal paramétereivel. A signalok és a slotok tetszőleges számú és típusú paraméterrel rendelkezhetnek, és teljes mértékben típusbiztosak. Egy slothoz tetszőleges számú signal köthető, ahogy egy signal is tetszőleges számú slothoz köthető, sőt arra is van lehetőség, hogy egy signalt közvetlenül egy másik signalhoz kössünk, ebben az esetben a második signal azonnal kiváltódik, amikor az első signal kiváltódik. Ahogy egy signal nem tudja, hogy bármi is kezeli-e őt, úgy a slot sem tudja, hogy van-e hozzá kötve signal, ezáltal teljesen független komponenseket készíthetünk a Qt-vel. #ifndef TEXTBOXPLUGIN_H #define TEXTBOXPLUGIN_H #include <QObject> #include <QMainWindow> #include "textboxinterface.h" class TextBoxPlugin : public TextBoxInterface { Q_OBJECT Q_INTERFACES( TextBoxInterface ) public: TextBoxPlugin(); ~TextBoxPlugin(); virtual void exec(); QStringList textboxes() const; protected: virtual void connectnotify( const char *signal ); public slots: virtual void setlanguage( QLocale::Language lang ); signals: void textchanged( QString s ); }; #endif 3.2. Nemzetköziesítés a Qt segítségével 2. ábra Signalok és slotok a QTDM programban Egy alkalmazás nemzetköziesítése az a folyamat, amikor felkészítjük az alkalmazást különböző nyelvi környezetekben történő felhasználására. Bizonyos esetekben a nemzetköziesítés egyszerű, például ha egy amerikai alkalmazás ausztrál vagy brit felhasználók számára szeretnénk elérhetővé tenni, akkor ez szinte csak néhány helyesírási korrekciót igényel. Ha viszont egy amerikai alkalmazást japán felhasználók számára, vagy egy koreai alkalmazást 5

6 német felhasználók számára szeretnénk elérhetővé tenni, akkor a szoftvernek nemcsak különböző nyelveken kell működnie, hanem más beviteli technikákat, karakterkódolást és megjelenítési szabályokat is igényel. A Qt megpróbálja a nemzetköziesítést a lehető legfájdalommentesebbé tenni a fejlesztők számára. Minden beviteli widget és szövegrajzolási módszer beépített támogatást nyújt minden támogatott nyelvhez. A beépített fontmotor helyesen tudja megjeleníteni a különböző írási rendszerek karaktereiből álló szövegeket. #include <QtDebug> #include "textboxplugin.h" TextBoxPlugin::TextBoxPlugin() { } TextBoxPlugin::~TextBoxPlugin() { } void TextBoxPlugin::exec() { qdebug() << "exec()"; emit textchanged( tr( "apple" ) ); } QStringList TextBoxPlugin::textboxes() const { return QStringList() << tr( "TextBox" ); } void TextBoxPlugin::connectNotify( const char *signal ) { qdebug() << "The" << QLatin1String( signal ) << "signal is connected."; } void TextBoxPlugin::setLanguage( QLocale::Language lang ) { emit textchanged( tr( "apple" ) ); } Q_EXPORT_PLUGIN2(textboxplugin, TextBoxPlugin); 3. ábra Signalok kiváltása és nemzetköziesített sztringek a QTDM TextBoxPlugin osztályának tagfüggvényeiben Akárhol is használ a programunk idézőjelezett szöveget, hogy megjelenítse azt a felhasználónak, biztosítanunk kell, hogy azt feldolgozza a QCoreApplication::translate() metódus. Ahhoz, hogy ezt elérjük, mindössze a QObject::tr() függvényt kell használnunk, ahogy az a 3. ábrán is látható. Ez a felhasználó által látható sztringek 99%-ánál működik. Ha használjuk a tr() függvényt egy alkalmazásban, elő kell állítanunk a felhasználó által látható szövegek fordításait is. Egy Qt alkalmazás fordítása egy három lépéses folyamat: 1) Az lupdate segédprogram futtatása, amely kigyűjti a C++ forráskódból a fordítható szövegeket, és előállít egy üzenet fájlt a szövegfordítók számára (ez egy.ts kiterjesztésű állomány). A segédprogram a tr() konstrukciók alapján ismeri fel a kigyűjtendő szövegeket, és rendszerint nyelvenként egy.ts fájlt generál. 2) A.ts fájlban található forrásszövegekhez fordítások biztosítása a Qt Linguist használatával (4. ábra). Mivel a.ts fájlok XML formátumúak, kézzel is szerkeszthetők. 3) Az lrelease segédprogram futtatása, amely a.ts fájlból egy üzenet fájlt hoz létre, amely már alkalmas a végső felhasználásra. A.ts fájl úgy működik mint egy forrás fájl, a.qm fájl pedig mint egy tárgykód fájl. A szövegfordító a.ts fájlokat szerkeszti, de az alkalmazás felhasználóinak csak a.qm fájlokra van szükségük. Mindkét fájltípus platform- és nyelvfüggetlen. 6

7 Ezeket a lépéseket az alkalmazás minden egyes verziójához meg kell ismételni. Az lupdate segédprogram mindent megtesz, hogy az előző verzióból újra felhasználja a fordításokat. Mielőtt lefuttatjuk az lupdate-et, elő kell készítenünk egy projektfájlt. Az általunk használt projektfájl az 5. ábrán látható. 4. ábra A Qt Linguist program ###################################################################### # Automatically generated by qmake (2.01a) Cs dec :52: ###################################################################### TEMPLATE = app subdirs SUBDIRS =. plugin/texboxplugin plugin/caplugin CONFIG += release TARGET = # Input HEADERS += mainwindow.h \ textboxinterface.h \ cainterface.h \ plugindialog.h SOURCES += main.cpp \ mainwindow.cpp \ plugindialog.cpp TRANSLATIONS += p1_hu.ts 5. ábra Egy egyszerű projektfájl a nemzetköziesítéshez 7

8 4. Kommunikáció egy virtuális gyorsítóval A 6. ábrán egy virtuális lineáris gyorsító vezérlőjének az operátori felületét láthatjuk. A virtuális gyorsítót vezérlő IOC szerver kimenete a hátsó parancsablakban látható (részben takarva az operátori felülettel). Ehhez az IOC szerverhez egy olyan egyszerű program kapcsolódik, amely CA segítségével lekérdezi az operátori felület bal oldalán látható (az ábrán piros színnel jelölt) hőmérsékleti értéket, és megjeleníti azt egy szövegdobozban az alkalmazás munkaterületén. 6. ábra A Virtual Linac és a QTDM működés közben Irodalomjegyzék [1] A Trolltech honlapja, [2] Experimental Physics and Industrial Control System, 8

Elemi alkalmazások fejlesztése III.

Elemi alkalmazások fejlesztése III. Elemi alkalmazások fejlesztése III. Grafikus felületű alkamazások készítése Bevezetés I. Készítette: Szabóné Nacsa Rozália nacsa@inf.elte.hu people.inf.elte.hu/nacsa/qt4/eaf3/ Qt 4 2009 1 www.trolltech.com

Részletesebben

3D-s számítógépes geometria és alakzatrekonstrukció

3D-s számítógépes geometria és alakzatrekonstrukció 3D-s számítógépes geometria és alakzatrekonstrukció Tesztkörnyezet I http://cg.iit.bme.hu/portal/node/312 https://portal.vik.bme.hu/kepzes/targyak/viiima01 Dr. Várady Tamás, Dr. Salvi Péter BME, Villamosmérnöki

Részletesebben

3D-s számítógépes geometria és alakzatrekonstrukció

3D-s számítógépes geometria és alakzatrekonstrukció 3D-s számítógépes geometria és alakzatrekonstrukció 3a. Tesztkörnyezet I http://cg.iit.bme.hu/portal/node/312 https://portal.vik.bme.hu/kepzes/targyak/viiima01 Dr. Várady Tamás, Salvi Péter BME, Villamosmérnöki

Részletesebben

Elemi alkalmazások fejlesztése III.

Elemi alkalmazások fejlesztése III. Elemi alkalmazások fejlesztése III. Bevezetés Készítette: Szabóné Nacsa Rozália nacsa@inf.elte.hu people.inf.elte.hu/nacsa/qt4/eaf3/ Qt 4 2007 1 A Qt assistant nyitó ablaka www.trolltech.com 2 Alkalmazás

Részletesebben

Alkalmazások fejlesztése III. Qt 4 /C++ alapú grafikus alkalmazás Bevezetés I.

Alkalmazások fejlesztése III. Qt 4 /C++ alapú grafikus alkalmazás Bevezetés I. Tartalomjegyzék Alkalmazás készítés Qt osztályokkal...2 A qmake eszköz...2 Hello Qt (hello)...2 Objektumok közötti kommunikáció (quit)...3 Fordítás/futtatás...4 Grafikus felület létrehozása, vezérlők szinkronizálása

Részletesebben

Grafikus Qt programok írása segédeszközök nélkül

Grafikus Qt programok írása segédeszközök nélkül Grafikus Qt programok írása segédeszközök nélkül Grafikus felületű Qt programokat ahogy láttuk, készíthetünk egy egyszerű szövegszerkesztővel is, bár a Qt jó támogatást ad a grafikus felület grafikus tervezésére

Részletesebben

Java I. A Java programozási nyelv

Java I. A Java programozási nyelv Java I. A Java programozási nyelv története,, alapvető jellemzői Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2007. 02. 12. Java I.: Történet, jellemzők, JDK JAVA1 / 1 Egy kis történelem

Részletesebben

Szoftver labor III. Tematika. Gyakorlatok. Dr. Csébfalvi Balázs

Szoftver labor III. Tematika. Gyakorlatok. Dr. Csébfalvi Balázs Szoftver labor III. Dr. Csébfalvi Balázs Irányítástechnika és Informatika Tanszék e-mail: cseb@iit.bme.hu http://www.iit.bme.hu/~cseb/ Tematika Bevezetés Java programozás alapjai Kivételkezelés Dinamikus

Részletesebben

Bevezetés az informatikába

Bevezetés az informatikába Bevezetés az informatikába Gilányi Attila Debreceni Egyetem, Informatikai Kar Debrecen, 2016. Gilányi A. (Debreceni Egyetem) Bevezetés az informatikába 1 / 5 Outline 1 A számítógépek története 2 Operációs

Részletesebben

OOP és UML Áttekintés

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

Részletesebben

Kommunikációs rendszerek teljesítőképesség-vizsgálata

Kommunikációs rendszerek teljesítőképesség-vizsgálata Kommunikációs rendszerek teljesítőképesség-vizsgálata (3. előadás) Dr. Lencse Gábor lencse@sze.hu https://www.tilb.sze.hu/cgi-bin/tilb.cgi?0=m&1=targyak&2=krtv 1 Miről lesz szó? Az OMNeT++ diszkrét idejű

Részletesebben

Operációs rendszerek. Az X Window rendszer

Operációs rendszerek. Az X Window rendszer Operációs rendszerek X Windows rendszer Az X Window rendszer Grafikus felhasználói felületet biztosító alkalmazás és a kapcsolódó protokoll 1983-84: a Massachusetts Institute of Technology-n (MIT, USA).

Részletesebben

2011.11.29. JUnit. JUnit használata. IDE támogatás. Parancssori használat. Teszt készítése. Teszt készítése

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,

Részletesebben

Bevezető. Servlet alapgondolatok

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

Részletesebben

Robotot vezérlő szoftverek fejlesztése Developing robot controller softwares

Robotot vezérlő szoftverek fejlesztése Developing robot controller softwares Robotot vezérlő szoftverek fejlesztése Developing robot controller softwares VARGA Máté 1, PÓGÁR István 2, VÉGH János 1 Programtervező informatikus BSc szakos hallgató 2 Programtervező informatikus MSc

Részletesebben

A Java EE 5 plattform

A Java EE 5 plattform A Java EE 5 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11. 13. A Java EE 5 platform A Java EE 5 plattform A J2EE 1.4 után következő verzió. Alapvető továbbfejlesztési

Részletesebben

ISA szimulátor objektum-orientált modell (C++)

ISA szimulátor objektum-orientált modell (C++) Budapesti Műszaki és Gazdaságtudományi Egyetem ISA szimulátor objektum-orientált modell (C++) Horváth Péter Elektronikus Eszközök Tanszéke 2015. február 12. Horváth Péter ISA szimulátor objektum-orientált

Részletesebben

Közösség, projektek, IDE

Közösség, projektek, IDE Eclipse Közösség, projektek, IDE Eclipse egy nyílt forráskódú (open source) projekteken dolgozó közösség, céljuk egy kiterjeszthető fejlesztői platform és keretrendszer fejlesztése, amely megoldásokkal

Részletesebben

Budapest, 2007. március. ELTE Informatikai Kar

Budapest, 2007. március. ELTE Informatikai Kar Tartalomjegyzék Alkalmazás készítés Qt osztályokkal...2 A qmake eszköz...2 Hello Qt (hello)...2 A projekt elkészítésének lépései...3 Objektumok közötti kommunikáció (quit)...3 A projekt elkészítésének

Részletesebben

Dr. Schuster György október 30.

Dr. Schuster György október 30. Real-time operációs rendszerek RTOS 2015. október 30. Jellemzők ONX POSIX kompatibilis, Jellemzők ONX POSIX kompatibilis, mikrokernel alapú, Jellemzők ONX POSIX kompatibilis, mikrokernel alapú, nem kereskedelmi

Részletesebben

JAVA webes alkalmazások

JAVA webes alkalmazások JAVA webes alkalmazások Java Enterprise Edition a JEE-t egy specifikáció definiálja, ami de facto szabványnak tekinthető, egy ennek megfelelő Java EE alkalmazásszerver kezeli a telepített komponensek tranzakcióit,

Részletesebben

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

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

Részletesebben

Elemi alkalmazások fejlesztése IV. Adatbázis-kezelő GUI alkalmazás készítése 3. Összetett tábla karbantartása

Elemi alkalmazások fejlesztése IV. Adatbázis-kezelő GUI alkalmazás készítése 3. Összetett tábla karbantartása Elemi alkalmazások fejlesztése IV. Adatbázis-kezelő GUI alkalmazás készítése 3. Összetett tábla karbantartása Készítette: Szabóné Nacsa Rozália nacsa@inf.elte.hu people.inf.elte.hu/nacsa/eaf4/ Qt 4 2007

Részletesebben

Bevezetés a programozásba Előadás: A const

Bevezetés a programozásba Előadás: A const Bevezetés a programozásba 2 6. Előadás: A const ISMÉTLÉS Interface - Implementation struct Particle { int x,y; unsigned char r,g,b; void rajzol(); }; }; void Particle::rajzol() { gout

Részletesebben

A Debreceni Egyetem és a Nagyváradi Egyetem WiFi alapú helymeghatározó rendszere

A Debreceni Egyetem és a Nagyváradi Egyetem WiFi alapú helymeghatározó rendszere A Debreceni Egyetem és a Nagyváradi Egyetem WiFi alapú helymeghatározó rendszere Gál Zoltán 1 Marius Onic 2 1 IT igazgató, Debreceni Egyetem TEK, zgal@unideb.hu 2 IT vezet, Nagyváradi Egyetem, omar@uoradea.ro

Részletesebben

Webes alkalmazások fejlesztése

Webes alkalmazások fejlesztése Webes alkalmazások fejlesztése 3. gyakorlat Authentikáció, adatok feltöltése Szabó Tamás (sztrabi@inf.elte.hu) - sztrabi.web.elte.hu Authentikáció Manapság már elvárás, hogy a felhasználó regisztrálni

Részletesebben

Programozási technológia

Programozási technológia Programozási technológia Swing GUI készítése NetBeans IDE segítségével Dr. Szendrei Rudolf ELTE Informatikai Kar 2018. Bevezető Eddig a grafikus felhasználói felületet kódból hoztuk létre kézzel. A mi

Részletesebben

Eseménykezelés. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor.

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

Részletesebben

WWW MULTIMÉDIA INTERFÉSZ ADATBÁZISHASZNÁLATHOZ AZ INTERNETEN

WWW MULTIMÉDIA INTERFÉSZ ADATBÁZISHASZNÁLATHOZ AZ INTERNETEN WWW MULTIMÉDIA INTERFÉSZ ADATBÁZISHASZNÁLATHOZ AZ INTERNETEN Herdon Miklós, herdon@fs2.date.hu* Kovács Zoltán, kovacsz@fs2.date.hu** Szegedi János, szegedi@fs2.date.hu* Tóth András-Balázs, tab@fs2.date.hu*

Részletesebben

Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

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

Részletesebben

Iman 3.0 szoftverdokumentáció

Iman 3.0 szoftverdokumentáció Melléklet: Az iman3 program előzetes leírása. Iman 3.0 szoftverdokumentáció Tartalomjegyzék 1. Az Iman rendszer...2 1.1. Modulok...2 1.2. Modulok részletes leírása...2 1.2.1. Iman.exe...2 1.2.2. Interpreter.dll...3

Részletesebben

MVC. Model View Controller

MVC. Model View Controller MVC Model View Controller Szoftver fejlesztés régen Console-based alkalmazások Pure HTML weboldalak Assembly, C Tipikusan kevés fejlesztő (Johm Carmack Wolfenstein, Doom, Quake..) Szűkös erőforrások optimális

Részletesebben

ARM Cortex magú mikrovezérlők

ARM Cortex magú mikrovezérlők ARM Cortex magú mikrovezérlők 12. STemWin garfikus könyvtár Scherer Balázs Budapest University of Technology and Economics Department of Measurement and Information Systems BME-MIT 2018 LCD kijelzők kezelése

Részletesebben

Objektum orientáltság alapjai A Java nyelv Fordítás - futtatás

Objektum orientáltság alapjai A Java nyelv Fordítás - futtatás Objektum orientáltság alapjai A Java nyelv Fordítás - futtatás Objektum orientáltság alapjai Objektum: A való világ egy elemének ábrázolása, amely minden esetben rendelkezik: Állapottal,Viselkedéssel,Identitással

Részletesebben

Elemi alkalmazások fejlesztése III

Elemi alkalmazások fejlesztése III Elemi alkalmazások fejlesztése III Egyablakos alkalmazás készítése I. Qt/X11 felhasználásával Kdevelop környezetben készítette: Steingart Ferenc Szabóné Nacsa Rozália Ajánlott irodalom Qt dokumentáció

Részletesebben

Bevezetés a programozásba előadás: Öröklődés

Bevezetés a programozásba előadás: Öröklődés Bevezetés a programozásba 2 5. előadás: Öröklődés emlékeztető Tagfüggvény struct koord { double x,y,r; void set(double ux, double uy) { x=ux; y=uy; r=sqrt(x*x+y*y); } Használat: koord k; k.set(4,5); Egységbezárás

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

Elemi alkalmazások fejlesztése III. A Qt assistant elindítása. Ajánlott ir odalom. A Qt assistant nyitó ablaka

Elemi alkalmazások fejlesztése III. A Qt assistant elindítása. Ajánlott ir odalom. A Qt assistant nyitó ablaka Elemi alkalmazások fejlesztése III Ajánlott ir odalom Egy ablakos alkalmazás készítése I. C++ / Qt felhasználásával Qt dokumentáció online: www.trolltech.com lokális változat: Kdevelop help vagy /usr/share/doc...

Részletesebben

Bevezetés a programozásba Előadás: Fordítási egység

Bevezetés a programozásba Előadás: Fordítási egység Bevezetés a programozásba 2 5. Előadás: Fordítási egység ISMÉTLÉS Tagfüggvény kiemelése struct Particle { int x,y; unsigned char r,g,b; void rajzol(); }; void Particle::rajzol() { gout

Részletesebben

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Folyamatmodellezés és eszközei Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Folyamat, munkafolyamat Munkafolyamat (Workflow): azoknak a lépéseknek a sorozata,

Részletesebben

Virtuális függvények (late binding)

Virtuális függvények (late binding) Virtuális függvények (late binding) Miskolci Egyetem Általános Informatikai Tanszék Virtuális függvények CPP5 / 1 Azonos nevű függvények megkülönböztetése paraméterszignatúra (függvény overloading) - egy

Részletesebben

Elemi alkalmazások fejlesztése III

Elemi alkalmazások fejlesztése III Elemi alkalmazások fejlesztése III Egy ablakos alkalmazás készítése I. C++ / Qt felhasználásával készítette: Szabóné Nacsa Rozália 1 Ajánlott irodalom Qt dokumentáció online: www.trolltech.com lokális

Részletesebben

Számítógépes munkakörnyezet II. Szoftver

Számítógépes munkakörnyezet II. Szoftver Számítógépes munkakörnyezet II. Szoftver A hardver és a felhasználó közötti kapcsolat Szoftverek csoportosítása Számítógép működtetéséhez szükséges szoftverek Operációs rendszerek Üzemeltetési segédprogramok

Részletesebben

Alkalmazás és megjelenítés virtualizáció

Alkalmazás és megjelenítés virtualizáció Virtualizációs technológiák és alkalmazásaik Alkalmazás és megjelenítés virtualizáció Micskei Zoltán http://www.mit.bme.hu/~micskeiz Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs

Részletesebben

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem A J2EE fejlesztési si platform (application model) 1.4 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11.13. A J2EE application model A Java szabványok -

Részletesebben

Végfelhasználói Applet kézikönyv

Végfelhasználói Applet kézikönyv MARGARÉTA verzió 3.0 Kiadás 1 Kiadás dátuma 2017. február 7. A MARGARÉTA Kártyamenedzsment rendszer a Noreg Információvédelmi Kft terméke. Noreg Információvédelmi Kft web: www.noreg.hu e-mail: info@noreg.hu

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

Verifikáció és validáció Általános bevezető

Verifikáció és validáció Általános bevezető Verifikáció és validáció Általános bevezető Általános Verifikáció és validáció verification and validation - V&V: ellenőrző és elemző folyamatok amelyek biztosítják, hogy a szoftver megfelel a specifikációjának

Részletesebben

Osztálytervezés és implementációs ajánlások

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

Részletesebben

Osztott alkalmazások fejlesztési technológiái Áttekintés

Osztott alkalmazások fejlesztési technológiái Áttekintés Osztott alkalmazások fejlesztési technológiái Áttekintés Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Történelem - a kezdetek 2 Mainframe-ek és terminálok Minden a központi gépen fut A

Részletesebben

Osztálytervezés és implementációs ajánlások

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

Részletesebben

Cloud computing. Cloud computing. Dr. Bakonyi Péter.

Cloud computing. Cloud computing. Dr. Bakonyi Péter. Cloud computing Cloud computing Dr. Bakonyi Péter. 1/24/2011 1/24/2011 Cloud computing 2 Cloud definició A cloud vagy felhő egy platform vagy infrastruktúra Az alkalmazások és szolgáltatások végrehajtására

Részletesebben

DocBook útmutató. Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.hu

DocBook útmutató. Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.hu DocBook útmutató Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.hu Mi a DocBook? (1) XML formátum műszaki dokumentációhoz Eredetileg hardver és szoftver dokumentáció készítéséhez

Részletesebben

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése Bevezetés Célkitűzés, tematika, követelmények A.NET Core keretrendszer Cserép Máté mcserep@inf.elte.hu http://mcserep.web.elte.hu

Részletesebben

Java I. A Java programozási nyelv

Java I. A Java programozási nyelv Java I. A Java programozási nyelv története,, alapvetı jellemzıi Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2007. 02. 12. Java I.: Történet, jellemzık, JDK JAVA1 / 1 Egy kis történelem

Részletesebben

EMTP, EGY ÚJ LEVELEZÕ PROTOKOLL ÉS IMPLEMENTÁCIÓJA

EMTP, EGY ÚJ LEVELEZÕ PROTOKOLL ÉS IMPLEMENTÁCIÓJA EMTP, EGY ÚJ LEVELEZÕ PROTOKOLL ÉS IMPLEMENTÁCIÓJA Iványi Tibor, ivanyit@tigris.klte.hu Csukás Levente, csukasl@fox.klte.hu Kossuth Lajos Tudományegyetem Informatikai és Számító Központ Abstract The well

Részletesebben

ESEMÉNY VEZÉRELT ALKALMAZÁSOK FEJLESZTÉSE I. Bevezetés. Készítette: Gregorics Tibor

ESEMÉNY VEZÉRELT ALKALMAZÁSOK FEJLESZTÉSE I. Bevezetés. Készítette: Gregorics Tibor ESEMÉNY VEZÉRELT ALKALMAZÁSOK FEJLESZTÉSE I. Bevezetés Készítette: Gregorics Tibor Előfeltétel: OAF (EAF2) Kötelező házi feladatok: 4 darab feladat max. 5-5 pontért Feltételek 2 hét késés: legfeljebb 3

Részletesebben

Bevezetés a programozásba II. 8. Előadás: Osztályok, objektumok, osztályszintű metódusok

Bevezetés a programozásba II. 8. Előadás: Osztályok, objektumok, osztályszintű metódusok Bevezetés a programozásba II 8. Előadás: Osztályok, objektumok, osztályszintű metódusok vektor.h #ifndef VEKTOR_H #define VEKTOR_H class Vektor { int meret, *mut; public: Vektor(int meret); int szamlal(int

Részletesebben

Orvosi készülékekben használható modern fejlesztési technológiák lehetőségeinek vizsgálata

Orvosi készülékekben használható modern fejlesztési technológiák lehetőségeinek vizsgálata Kutatási beszámoló a Pro Progressio Alapítvány számára Budapesti Műszaki és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar Mérnök informatika szak Orvosi készülékekben használható modern

Részletesebben

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése Célkitűzés, tematika, követelmények A.NET Core keretrendszer Cserép Máté mcserep@inf.elte.hu http://mcserep.web.elte.hu Célkitűzés

Részletesebben

Flex: csak rugalmasan!

Flex: csak rugalmasan! Flex: csak rugalmasan! Kiss-Tóth Marcell http://kiss-toth.hu marcell@kiss-toth.hu Magyarországi Web Konferencia 2006 2006. március 18. tartalom bevezető Adobe Flex alternatív technológiák bevezető az Internetnek

Részletesebben

Kommunikáció. Folyamatok közötti kommunikáció. Minden elosztott rendszer alapja

Kommunikáció. Folyamatok közötti kommunikáció. Minden elosztott rendszer alapja Kommunikáció Folyamatok közötti kommunikáció Minden elosztott rendszer alapja Marshalling Alap primitívek Direkt, indirekt portok Blokkolás, nem blokkolás Pufferelés Megbízhatóság RPC Az RPC jellemzői

Részletesebben

Miért ASP.NET? Egyszerű webes alkalmazás fejlesztése. Történet ASP ASP.NET. Működés. Készítette: Simon Nándor

Miért ASP.NET? Egyszerű webes alkalmazás fejlesztése. Történet ASP ASP.NET. Működés. Készítette: Simon Nándor Miért ASP.NET? Egyszerű webes alkalmazás fejlesztése Készítette: Simon Nándor Integrált fejlesztő környezet Egységes (vizuális) fejlesztési lehetőségek Bőséges segítség (help) Hibakeresési, nyomkövetési

Részletesebben

Biztonsági folyamatirányító. rendszerek szoftvere

Biztonsági folyamatirányító. rendszerek szoftvere Biztonsági folyamatirányító rendszerek szoftvere 1 Biztonsági folyamatirányító rendszerek szoftvere Tartalom Szoftverek szerepe a folyamatirányító rendszerekben Szoftverek megbízhatósága Szoftver életciklus

Részletesebben

Mobil informatika gyakorlat. 2. óra: NFC a gyakorlatban

Mobil informatika gyakorlat. 2. óra: NFC a gyakorlatban Mobil informatika gyakorlat 2. óra: NFC a gyakorlatban Mi az NFC? Near Field Communication Rövid hatótávolságú rádiófrekvenciás technológia (tipikusan 5-10 cm) 13,56 MHz frekvencia Az ISO/IEC 14443 szabvány

Részletesebben

Miért jó nekünk kutatóknak a felhő? Kacsuk Péter MTA SZTAKI

Miért jó nekünk kutatóknak a felhő? Kacsuk Péter MTA SZTAKI Miért jó nekünk kutatóknak a felhő? Kacsuk Péter MTA SZTAKI Szolgáltatások halmaza: o Erőforrások, alkalmazások, eszközök o Nagy méretű, heterogén, gazdaságos, mobil, zöld El van takarva, hogy o Hol van

Részletesebben

SZOFTVEREK A SORBANÁLLÁSI ELMÉLET OKTATÁSÁBAN

SZOFTVEREK A SORBANÁLLÁSI ELMÉLET OKTATÁSÁBAN SZOFTVEREK A SORBANÁLLÁSI ELMÉLET OKTATÁSÁBAN Almási Béla, almasi@math.klte.hu Sztrik János, jsztrik@math.klte.hu KLTE Matematikai és Informatikai Intézet Abstract This paper gives a short review on software

Részletesebben

A szoftverfejlesztés eszközei

A szoftverfejlesztés eszközei A szoftverfejlesztés eszközei Fejleszt! eszközök Segédeszközök (szoftverek) programok és fejlesztési dokumentáció írásához elemzéséhez teszteléséhez karbantartásához 2 Történet (hw) Lyukkártya válogató

Részletesebben

TÁVOKTATÁSI TANANYAGOK FEJLESZTÉSÉNEK MÓDSZERTANI KÉRDÉSEI

TÁVOKTATÁSI TANANYAGOK FEJLESZTÉSÉNEK MÓDSZERTANI KÉRDÉSEI TÁVOKTATÁSI TANANYAGOK FEJLESZTÉSÉNEK MÓDSZERTANI KÉRDÉSEI A távoktatási forma bevezetése és eredményességének vizsgálata az igazgatásszervezők informatikai képzésében DOKTORI ÉRTEKEZÉS TÉZISEI dr. Horváth

Részletesebben

Mérnök informatikus (BSc) alapszak levelező tagozat (BIL) / BSc in Engineering Information Technology (Part Time)

Mérnök informatikus (BSc) alapszak levelező tagozat (BIL) / BSc in Engineering Information Technology (Part Time) Mérnök informatikus (BSc) alapszak levelező tagozat (BIL) / BSc in Engineering Information Technology (Part Time) (specializáció választás a 4. félévben, specializációra lépés feltétele: az egyik szigorlat

Részletesebben

Operációs rendszerek - bevezető

Operációs rendszerek - bevezető Operációs rendszerek - bevezető Szabó Adrienn Informatika 1 2011 őszi félév Tartalom Operációs rendszerekről általában Bevezető Operációs rendszerek A Windows története Kezdetek Sikerek A Linux története

Részletesebben

Cloud computing Dr. Bakonyi Péter.

Cloud computing Dr. Bakonyi Péter. Cloud computing Dr. Bakonyi Péter. 1/24/2011 Cloud computing 1/24/2011 Cloud computing 2 Cloud definició A cloud vagy felhő egy platform vagy infrastruktúra Az alkalmazások és szolgáltatások végrehajtására

Részletesebben

A NetBeans IDE Ubuntu Linux operációs rendszeren

A NetBeans IDE Ubuntu Linux operációs rendszeren A NetBeans IDE Ubuntu Linux operációs rendszeren Készítette: Török Viktor (Kapitány) E-mail: kapitany@lidercfeny.hu 1/10 A NetBeans IDE Linux operációs rendszeren Bevezető A NetBeans IDE egy Java-ban írt,

Részletesebben

SZEMLÉLETES RÉSZINFORMÁCIÓK INTEGRÁCIÓS PROBLÉMÁINAK VIZSGÁLATA A VIRTUÁLIS VALÓSÁGOT TEREMTŐ SZIMULÁTOROK ALAPJÁN

SZEMLÉLETES RÉSZINFORMÁCIÓK INTEGRÁCIÓS PROBLÉMÁINAK VIZSGÁLATA A VIRTUÁLIS VALÓSÁGOT TEREMTŐ SZIMULÁTOROK ALAPJÁN Cser Ádám ZMNE KMDI adam.cser@ge.com SZEMLÉLETES RÉSZINFORMÁCIÓK INTEGRÁCIÓS PROBLÉMÁINAK VIZSGÁLATA A VIRTUÁLIS VALÓSÁGOT TEREMTŐ SZIMULÁTOROK ALAPJÁN Absztrakt Az ember környezetét érzékszervein keresztül

Részletesebben

Produktív környezetben használt, nyílt forráskódú komplex térinformatikai megoldások dr. Siki Zoltán

Produktív környezetben használt, nyílt forráskódú komplex térinformatikai megoldások dr. Siki Zoltán Produktív környezetben használt, nyílt forráskódú komplex térinformatikai megoldások dr. Siki Zoltán BME Általános és Felsőgeodézia tanszék siki@agt.bme.hu Nyiltforrású koncepció Négy szabadság (Richard

Részletesebben

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

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

Részletesebben

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

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

Részletesebben

A L i n u x r u h á j a

A L i n u x r u h á j a A L i n u x r u h á j a Disztribúciók és azok sajátosságai Ablakkezelők DE-EFK Egészségügyi Ügyvitelszervező Szak Linux c. tantárgy 2006 I. félév D i s z t r i b ú c i ó f o g a l m a A Linux-disztribúció

Részletesebben

Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver

Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver Felhasználói leírás verzió: 1.0 1 TARTALOMJEGYZÉK 1. BEVEZETÉS... 3 2. ALAPKÉPERNYŐ... 3 3. MENÜSZERKEZET... 3 4. DOKUMENTUM ALÁÍRÁSA... 4

Részletesebben

SZET GYAK1: Követelmények ellenőrzése

SZET GYAK1: Követelmények ellenőrzése SZET GYAK1: Követelmények ellenőrzése A gyakorlaton a követelmények nyilvántartásával és ellenőrzésével kapcsolatos feladatok közül vizsgálunk meg néhányat. Követelményspecifikáció ellenőrzése átvizsgálással

Részletesebben

QLabel *label = new Qlabel("Hello Qt!",0);

QLabel *label = new Qlabel(Hello Qt!,0); #include #include int main(int argc,char **argv) QApplication app(argc,argv); QLabel *label = new Qlabel("Hello Qt!",0); app.setmainwidget(label); label->show(); return app.exec();

Részletesebben

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK STRUKTÚRA ALAPÚ, VAGY FEHÉRDOBOZ TECHNIKÁK TAPASZTALAT ALAPÚ TECHNIKÁK

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK STRUKTÚRA ALAPÚ, VAGY FEHÉRDOBOZ TECHNIKÁK TAPASZTALAT ALAPÚ TECHNIKÁK MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK STRUKTÚRA ALAPÚ, VAGY FEHÉRDOBOZ TECHNIKÁK TAPASZTALAT ALAPÚ TECHNIKÁK MUNKAERŐ-PIACI IGÉNYEKNEK MEGFELELŐ, GYAKORLATORIENTÁLT KÉPZÉSEK, SZOLGÁLTATÁSOK A DEBRECENI EGYETEMEN

Részletesebben

Swing GUI készítése NetBeans IDE segítségével

Swing GUI készítése NetBeans IDE segítségével Programozási Swing e NetBeans IDE segítségével Informatikai Kar Eötvös Loránd Tudományegyetem 1 Tartalom 1 2 2 Eddig a grafikus felhasználói felületet kódból hoztuk létre kézzel. A mi feladatunk volt az

Részletesebben

ATM hálózatra épülő Interaktív Televízió Szolgáltatás

ATM hálózatra épülő Interaktív Televízió Szolgáltatás ATM hálózatra épülő Interaktív Televízió Szolgáltatás Farkas Károly, Maliosz Markosz Kivonat Az EMMA/SIGNE [5] kísérleti rendszer tetszőleges telekommunikációs szolgáltatás megvalósítására alkalmas. Az

Részletesebben

Grid menedzsment megoldás az ARC köztesrétegben

Grid menedzsment megoldás az ARC köztesrétegben Grid menedzsment megoldás az ARC köztesrétegben Intézetünk az Új Magyarország Fejlesztési Terv TÁMOP 4.1.3[1] alprojektjének keretén belül dolgozott ki sikeresen egy jól működő megoldást egy olyan problémára,

Részletesebben

iseries Client Access Express - Mielőtt elkezdi

iseries Client Access Express - Mielőtt elkezdi iseries Client Access Express - Mielőtt elkezdi iseries Client Access Express - Mielőtt elkezdi ii iseries: Client Access Express - Mielőtt elkezdi Tartalom Rész 1. Client Access Express - Mielőtt elkezdi.................

Részletesebben

Integrációs mellékhatások és gyógymódok a felhőben. Géczy Viktor Üzletfejlesztési igazgató

Integrációs mellékhatások és gyógymódok a felhőben. Géczy Viktor Üzletfejlesztési igazgató Integrációs mellékhatások és gyógymódok a felhőben Géczy Viktor Üzletfejlesztési igazgató Middleware projektek sikertelenségeihez vezethet Integrációs (interfész) tesztek HIÁNYA Tesztadatok? Emulátorok?

Részletesebben

Tartalomjegyzék. Általános Információ! 2. Felhasználói dokumentáció! 3. Feladat! 3. Környezet! 3. Használat! 3. Bemenet! 3. Példa!

Tartalomjegyzék. Általános Információ! 2. Felhasználói dokumentáció! 3. Feladat! 3. Környezet! 3. Használat! 3. Bemenet! 3. Példa! Tartalomjegyzék Általános Információ! 2 Felhasználói dokumentáció! 3 Feladat! 3 Környezet! 3 Használat! 3 Bemenet! 3 Példa! 3 A program eredménye! 3 Példa! 3 Hibalehetőségek! 3 Példa! 3 Fejlesztői dokumentáció!

Részletesebben

ARM Cortex magú mikrovezérlők. mbed

ARM Cortex magú mikrovezérlők. mbed ARM Cortex magú mikrovezérlők mbed Scherer Balázs Budapest University of Technology and Economics Department of Measurement and Information Systems BME-MIT 2016 MBED webes fejlesztőkörnyezet 2009-ben megjelent

Részletesebben

Tervezőeszközök, fejlesztőeszközök használata Qt alapú alkalmazásoknál. Saját vezérlő használata tervezőben (worldclocks)

Tervezőeszközök, fejlesztőeszközök használata Qt alapú alkalmazásoknál. Saját vezérlő használata tervezőben (worldclocks) Tartalomjegyzék Tervezőeszközök, fejlesztőeszközök használata Qt alapú alkalmazásoknál...1 Saját vezérlő használata tervezőben (worldclocks)...1 DigitalClock osztály (módosítás)...2 MyForm osztály...3

Részletesebben

Windows hálózati adminisztráció segédlet a gyakorlati órákhoz

Windows hálózati adminisztráció segédlet a gyakorlati órákhoz Windows hálózati adminisztráció segédlet a gyakorlati órákhoz Szerver oldal: Kliens oldal: Csoport Házirend 1. A belső hálózat konfigurálása Hozzuk létre a virtuális belső hálózatunkat. INTERNET in NAT

Részletesebben

LabVIEW példák és bemutatók KÉSZÍTETTE: DR. FÜVESI VIKTOR

LabVIEW példák és bemutatók KÉSZÍTETTE: DR. FÜVESI VIKTOR LabVIEW példák és bemutatók KÉSZÍTETTE: DR. FÜVESI VIKTOR LabVIEW-ról National Instruments (NI) által fejlesztett Grafikus programfejlesztő környezet, méréstechnikai, vezérlési, jelfeldolgozási feladatok

Részletesebben

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe Mechatronika és mikroszámítógépek 2017/2018 I. félév Bevezetés a C nyelvbe A C programozási nyelv A C egy általános célú programozási nyelv, melyet Dennis Ritchie fejlesztett ki Ken Thompson segítségével

Részletesebben

Projekt beszámoló. NEWSIT News basedearlywarning System forintradaytrading: Hír alapú Korai Figyelmeztető Rendszer Napon belüli Kereskedéshez

Projekt beszámoló. NEWSIT News basedearlywarning System forintradaytrading: Hír alapú Korai Figyelmeztető Rendszer Napon belüli Kereskedéshez Projekt beszámoló Projekt azonosítója: Projektgazda neve: Projekt címe: DAOP-1.3.1-12-2012-0080 Pénzügyi Innovációs Iroda Kft. NEWSIT News basedearlywarning System forintradaytrading: Hír alapú Korai Figyelmeztető

Részletesebben

Az ErdaGIS térinformatikai keretrendszer

Az ErdaGIS térinformatikai keretrendszer Az ErdaGIS térinformatikai keretrendszer Két évtized tapasztalatát sűrítettük ErdaGIS térinformatikai keretrendszerünkbe, mely moduláris felépítésével széleskörű felhasználói réteget céloz, és felépítését

Részletesebben

A felhőről általában. Kacsuk Péter MTA SZTAKI

A felhőről általában. Kacsuk Péter MTA SZTAKI A felhőről általában Kacsuk Péter MTA SZTAKI Miért fontos a felhő? (I) Problémák, ha az infrastruktúra még nem létezik Az ötletek megvalósításához szükséges idő Kutatás a felhők előtt 1. Van egy jó ötlet

Részletesebben

Bevezetés a programozásba Előadás: Objektumszintű és osztályszintű elemek, hibakezelés

Bevezetés a programozásba Előadás: Objektumszintű és osztályszintű elemek, hibakezelés Bevezetés a programozásba 2 7. Előadás: Objektumszű és osztályszű elemek, hibakezelés ISMÉTLÉS Osztály class Particle { public: Particle( X, X, Y); virtual void mozog( ); ); virtual void rajzol( ) const;

Részletesebben

Mobil készülékek programozása

Mobil készülékek programozása Mobil készülékek Egyre több ember zsebében és táskájában a legkülönfélébb mobileszközök megtalálhatóak Mobiltelefonok, PDA-k, PalmTopok és intelligens multimédiás eszközök (mit pl. ipod-ok) A készülékek

Részletesebben

Könyvtári címkéző munkahely

Könyvtári címkéző munkahely Könyvtári címkéző munkahely Tartalomjegyzék A RENDSZER HARDVER ELEMEI...3 1 RFID CÍMKÉK... 3 2 RFID ASZTALI OLVASÓ... 3 A RENDSZER SZOFTVER ELEMEI... 4 1 KÖNYV CÍMKÉZŐ MUNKAÁLLOMÁS... 4 2 A PC- S SZOFTVEREK

Részletesebben