Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Eclipse architektúra.

Slides:



Advertisements
Hasonló előadás
Tamás Kincső, OSZK, Analitikus Feldolgozó Osztály, osztályvezető A részdokumentumok szolgáltatása az ELDORADO-ban ELDORADO konferencia a partnerkönyvtárakkal.
Advertisements


Kamarai prezentáció sablon
Készítette: Boros Erzsi
RESTful Web Service tesztelése
Programozás III STRING-XML.
Felhasználói felületek és üzleti logika Bollobás Dávid ASP.NET
Erőállóképesség mérése Találjanak teszteket az irodalomban
MATEMATIKA Év eleji felmérés 3. évfolyam
Humánkineziológia szak
Mellár János 5. óra Március 12. v
Elektromos mennyiségek mérése
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Domain specifikus nyelvek Eclipse Modeling.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Plugin fejlesztés – tervezési minták.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Bevezető.
Adatbányászati technikák (VISZM185)
Domain tesztelés bemutatása PHP tesztelés
Utófeszített vasbeton lemez statikai számítása Részletes számítás
Weben publikált térképek a földrajzi kutatásokban Ádám Eszter Geográfus MSc hallgató.
© Kozsik Tamás Beágyazott osztályok A blokkstrukturáltság támogatása –Eddig: egymásba ágyazható blokk utasítások Osztálydefiníciók is egymásba.
A tételek eljuttatása az iskolákba
Vizuális modellezés Uml és osztálydiagram UML eszközök
Elektronikai Áramkörök Tervezése és Megvalósítása
Ember László XUBUNTU Linux (ami majdnem UBUNTU) Ötödik nekifutás 192 MB RAM és 3 GB HDD erőforrásokkal.
VÁLOGATÁS ISKOLÁNK ÉLETÉBŐL KÉPEKBEN.
Védőgázas hegesztések
1. IS2PRI2 02/96 B.Könyv SIKER A KÖNYVELÉSHEZ. 2. IS2PRI2 02/96 Mi a B.Könyv KönyvelésMérlegEredményAdóAnalitikaForintDevizaKönyvelésMérlegEredményAdóAnalitikaForintDeviza.
WEB Technológiák Dr. Pance Miklós – Kolcza Gábor Miskolci Egyetem.
Készítette: Keszthelyi Zsolt
Szombathely Dinamikus WEB programozás: PHP és JSP.
Önleíró adatok: XML INFO ÉRA, Békéscsaba
© Kozsik Tamás Csomagok. © Kozsik Tamás A program tagolása Típusdefiníciók (osztályok, interfészek) Metódusok Blokk utasítások Csomagok.
Szerkezeti elemek teherbírásvizsgálata összetett terhelés esetén:
NOVÁK TAMÁS Nemzetközi Gazdaságtan
DRAGON BALL GT dbzgtlink féle változat! Illesztett, ráégetett, sárga felirattal! Japan és Angol Navigáláshoz használd a bal oldali léptető elemeket ! Verzio.
PHP I. Alapok. Mi a PHP? PHP Hypertext Preprocessor Szkriptnyelv –Egyszerű, gyors fejlesztés –Nincs fordítás (csak értelmező) Alkalmazási lehetőségek:
Lineáris egyenletrendszerek (Az evolúciótól a megoldáshalmaz szerkezetéig) dr. Szalkai István Pannon Egyetem, Veszprém /' /
szakmérnök hallgatók számára
Logikai szita Izsó Tímea 9.B.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Eclipse alapú technológiák OSGi Balogh András
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Eclipse alapú technológiák Plug-in fejlesztés teszteléssel Balogh.
2007. május 22. Debrecen Digitalizálás és elektronikus hozzáférés 1 DEA: a Debreceni Egyetem elektronikus Archívuma Karácsony Gyöngyi DE Egyetemi és Nemzeti.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Csurik Magda Országos Tisztifőorvosi Hivatal
A klinikai transzfúziós tevékenység Ápolás szakmai ellenőrzése
2006. Peer-to-Peer (P2P) hálózatok Távközlési és Médiainformatikai Tanszék.
3. előadás.  Apache szerver tudnivalók  Az index.php .htaccess – web-szerverünk beállításai  Konfigurációs állományok  Adatbázis kapcsolódás beállítása.
Verhás & Verhás Szoftver Manufaktúra Mi is az a Maven? build és deployment eszköz mint az ANT dependencia manager mint az IVY riport készítő.
QualcoDuna interkalibráció Talaj- és levegövizsgálati körmérések évi értékelése (2007.) Dr. Biliczkiné Gaál Piroska VITUKI Kht. Minőségbiztosítási és Ellenőrzési.
Komoróczy Tamás 1 Java programozási nyelv A nyelv alapjai.
Podoski Péter és Zabb László. Bevezető Algoritmus-vizualizáció témakörében végeztünk kutatásokat és fejlesztéseket Felmértük a manapság ismert eszközök.
1. Melyik jármű haladhat tovább elsőként az ábrán látható forgalmi helyzetben? a) A "V" jelű villamos. b) Az "M" jelű munkagép. c) Az "R" jelű rendőrségi.
Virtuális Méréstechnika Sub-VI és grafikonok 1 Makan Gergely, Vadai Gergely v
Apache Ant 2. gyakorlat Alkalmazásfejlesztés /2 Gyakorlat Zalatnai Csongor.
Mérés és adatgyűjtés laboratóriumi gyakorlat - levelező Sub-VI és grafikonok 1 Mingesz Róbert V
HTML ÉS PHP (Nagyon) rövid áttekintés. ADATBÁZISRENDSZEREK MŰKÖDÉSI SÉMÁJA Felh. interakció DB Connector MySQL ? A gyakorlaton:
Gazda Gergő Flexo szeminárium - Budapest, október Gazda Gergő Flexo szeminárium - Budapest, október Hatékony rendelés-feldolgozás, adminisztráció.
> aspnet_regiis -i 8 9 TIPP: Az „Alap” telepítés gyors, nem kérdez, de később korlátozhat.
Programozás III CSOMAG. CSOMAGOK Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek. A Java is csomagok halmaza: csomagokban van.
A KÖVETKEZŐKBEN SZÁMOZOTT KÉRDÉSEKET VAGY KÉPEKET LÁT SZÁMOZOTT KÉPLETEKKEL. ÍRJA A SZÁMOZOTT KÉRDÉSRE ADOTT VÁLASZT, VAGY A SZÁMOZOTT KÉPLET NEVÉT A VÁLASZÍV.
Algoritmizálás, adatmodellezés
1 Az igazság ideát van? Montskó Éva, mtv. 2 Célcsoport Az alábbi célcsoportokra vonatkozóan mutatjuk be az adatokat: 4-12 évesek,1.
Webes MES keretrendszer fejlesztése Kiss Miklós Dániel G-5S8 Tervezésvezető: Dr. Hornyák Olivér.
DLL használata és készítése Feladat
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Programozás III JPA.
A Linux operációs rendszer A Linux felépítése. A UNIX önálló változata. Forráskódja szabadon hozzáférhető->gyors terjedés Szabad szoftver de nem nyilvános.
Maven és Ant Build eszközök bemutatása
Java Code Coverage Library
Előadás másolata:

Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Eclipse architektúra

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 2 Eclipse architektúra  Platform független −Windows, Linux, AIX, HP-UX,…  Nyelvfüggetlen −Java, C, C++, PHP, Perl −Az eszköz és kiegészítései Java nyelven!  Több feladatra alkalmas −Kódolás, tesztelés, modellezés, …

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 3 Eclipse architektúra Eclipse Runtime Platform Integrated Dev. Env. JDT RCP PDECDT Contributed plugins

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 4 Eclipse architektúra Eclipse Runtime Platform Integrated Dev. Env. JDT RCP PDECDT Contributed plugins rendszerindítás plugin katalógus Erőforrás-kezelés (platformfüggetlenül) UI elemek (SWT,JFace) Update támogatás Help támogatás

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 5 Eclipse Runtime Platform  Plug-in registry (katalógus) −Pluginok nyilvántartása −Függőségek kezelése −Plugin betöltés menedzselése ●„lazy loading” – egy plugin csak akkor töltődik be, ha szükség van rá ●Csökkenti a rendszerindulás idejét

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 6 Eclipse Runtime Platform  Erőforrás-kezelés −Fájlok, könyvtárak elérése −A platform elrejtésével −Workspace kezelése ●A benne levő elemek elérése relatív úton ●A fájlok változásának kezelése (refresh) −Fájlkódolás és content type kezelése −„linked resources” ●Erőforrások a projekt fájlrendszerén kívül

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 7 Eclipse Runtime Platform  GUI elemek −SWT – Standard Widgeting Toolkit ●Platform-függő ●Natív GUI elemek (egszerűek) ●Eseménykezelés −JFace ●Platform-független ●Összetett GUI komponensek ●SWT-re épül −Később részletesen tárgyaljuk őket

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 8 Eclipse Runtime Platform  Update támogatás −A platform sok pluginból áll ●Mindegyik változhat ●Akár egymástól függetlenül is ●Függőségek vannak közöttük −Automatikus frissítési szolgáltatásra van szükség ●Függőségek figyelése ●Új verziók felderítése, letöltése, telepítése

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 9 Eclipse Runtime Platform  Update támogatás −Működés ●Minden feature (plugin-ok halmaza) definiálhat „update site”-okat ●Ezek weben elérhetőek ●A keretrendszer ellenőrizni tudja a legújabb verziókat (Help menü -> SW Updates -> Find & Install) ●Az új változatok letöltődnek, a függőségekkel együtt ●Telepítés után használhatóak

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 10 Eclipse Runtime Platform  Help támogatás −Az Eclipse Help rendszer moduláris −Minden plugin publikálhat bele tartalmat −Context-sensitive help −Egyszerű XML + HTML formátum −A dokumentáció akár a weben is lehet −Dinamikus help ●A tartalmat futási időben generáljuk

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 11 Eclipse architektúra Eclipse Runtime Platform Integrated Dev. Env. JDT RCP PDECDT Contributed plugins megosztott nézetek perspektívák tulajdonság-nézet (preferences) keresőmotor debug-támogatás Ant támogatás CVS támogatás

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 12 IDE  Megosztott nézetek −Nézetek (views) szabadon definiálhatóak −Többnyire statikus információ megjelenítésére −Több plugin is használhat egy nézetet ●Az aktív erőforrásoktól függően −Egy nézet egyszerre csak egy példányban van jelen −Példák ●Erőforrás-fa, tulajdonságok nézet, üzenetek nézet

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 13 IDE  Keresőmotor (search) −Egy kiválasztott erőforrásra kiadják a search parancsot −Megjelenik a keresés ablak ●Erőforrás-típusonként változhat ●Saját kiegészítés lehet ●Gondoskodik az eredmények megjelenítéséről is

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 14 IDE  Compare views −Több szöveges tartalom megjelenítése, összehsonlítása −Saját merge osztály definiálható −Saját viewer definiálható az összehasonlításhoz (2/3 párhuzamos fájl) −Struktúra-alapú összehasonlítás is lehetséges ●Fa-jellegű szerkezetek esetén hasznos

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 15 IDE  Debug támogatás −Lehetőség speciális debug célok definiálására ●Erőforrások megadása  Memória  Regiszterek  Stack frame-ek ●Kiértékelendő kifejezések megadása ●Változók és értékük megfigyelése −Parancsok definiálása ●Indítás, léptetés, …

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 16 IDE  Ant támogatás −Ant ●„A make Java alapú megfelelője”  Batch build tool ●XML-alapú konfigurációs fájlok −Programból futtatható make-fájlok −Eclipse-specifikus make taszkok (pl. erőforrás frissítés) −Saját taszkok definiálhatók (speciális build)

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 17 IDE  Csoportmunka támogatás −CVS – Concurrent Versioning System ●A kliens be van építve a platformba  Megosztott projektek kezelése, szinkronizációja −Saját repository providerek készíthetők (más verziókezelők támogatására) ●Szinkonizáció implementálása ●Projekt-megosztás varázsló ●Erőforrás módosítások figyelése

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 18 Eclipse architektúra Eclipse Runtime Platform Integrated Dev. Env. JDT RCP PDECDT Contributed plugins Java objektum modell AST Java forrás editor Debug támogatás (Java) JUnit teszt támogatás

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 19 Java Development Tooling  Java Objektum Modell – Mire jó? −Forráskód manipuláció ●Refactoring ●Automatikus kód transzformáció ●Kódgenerálás (!) −Forráskód analízis ●Komplexitási mérőszámok kiolvasása −Hátrány: metóduson belülre nem lát (jelenleg) ●A metódus törzse plain textként nyerhető ki

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 20 Java Development Tooling  Java Objektum Modell −Egy Java program elemeit tárolja −Mind bináris mind forrás-fájlokat kezel −Hierarchikus felépítésű −Lehetőség van lekérdezésre és manipulációra is −Könnyen megvalósíthatóak vele forráskód- manipulációk is

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 21 Java Development Tooling  Java Objektum Modell −IJavaModel – Az összes workspace projekt konténere, a legfelsőbb gyökér elem −IJavaProject – a projektet szimbolizálja, tartalmaz minden csomagot és classpath elemet −IPackageFragmentRoot – Egy Java könyvtárat (jar, zip) szimbolizál −IPackageFragment – egy csomagot, vagy csomagrészt reprezentáló elem

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 22 Java Development Tooling  Java Objektum Modell −ICompilationUnit – egy.java forrásfájl −IPackageDeclaration – a package deklarációt tartalmazza a java fájlban −IImportContainer – a java fájl importjait fogja össze −IImportDeclaration – egyetlen import deklaráció megfelelője −IType – egy típusdefiníció (forrás v. class fájlban) – osztály, interfész, annotáció, enum

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 23 Java Development Tooling  Java Objektum Modell −IField – egy osztály egy attribútuma −IMethod – egy osztály egy metódusa −IInitializer – egy osztály vagy példány szintű inicializáló blokk −IClassFile – egy bináris (.class) fájlt reprezentál

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 24 Java Development Tooling  Java Objektum Modell −WorkingCopy – helyi másolat amin dolgzunk ●Primary: minden plugin által közösen használt  commitWorkingCopy() – változások érvényesítése  discardWorkingCopy() – változások eldobása ●Saját másolat – legyen csak a miénk!  getWorkingCopy(owner) – az owner hatáskörébe utalja az új másolatot  commitWorkingCopy() – visszamenti az eredetibe a változásokat  A beépített refactoring pl. ezt használja, hogy tesztelhesse a változásokat

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 25 Java Development Tooling  Java Objektum Modell −Események ●IJavaElementDelta – az elem változott  ADDED – hozzáadva  REMOVED – törölve  CHANGED - változás  F_CHILDREN – a gyerek változtak  F_MODIFIERS – a típusmódosítók változtak  F_CONTENT – a tartalma változott  … −Lehetőség van ezekre reagálni

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 26 Java Development Tooling  A metódustörzsek mögött: AST −Abstract Syntax Tree – absztrakt szintaxisfa −Utasítás-szintig lebontja a forráskódot −Lehetőséget ad az elemi forráskód analízisre és manipulációra −Miért nem ilyen a Java Object Model? ●Erőforrás-takarékosság ●sebesség

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 27 Java Development Tooling  A metódustörzsek mögött: AST −Egy tetszőleges Java elem kibontható (egy osztály, egy metódus…) −A referenciák (például egy típus, egy metódus, vagy egy mező elérésére) nincsenek teljesen kifejtve ●Sebesség-növekedés ●Igény szerint kifejthető: binding.getJavaElement() −Használat: visitor pattern

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 28 Java Development Tooling  A metódustörzsek mögött: AST – Példa −Számoljuk meg a castolásokat! ASTNode root = parser.createAST(null); root.accept(new ASTVisitor() { public boolean visit(CastExpression ce) { fCastCount++; } });

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 29 Java Development Tooling  A metódustörzsek mögött: AST - Példa ASTNode root = parser.createAST(null); root.accept(new ASTVisitor() { public boolean visit(CastExpression ce) { fCastCount++; } }); AST generálás

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 30 Java Development Tooling  A metódustörzsek mögött: AST - Példa ASTNode root = parser.createAST(null); root.accept(new ASTVisitor() { public boolean visit(CastExpression ce) { fCastCount++; } }); Visitor megadása

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 31 Java Development Tooling  A metódustörzsek mögött: AST - Példa ASTNode root = parser.createAST(null); root.accept(new ASTVisitor() { public boolean visit(CastExpression ce) { fCastCount++; } }); A class cast kifejezésekre figyelünk

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 32 Java Development Tooling  A metódustörzsek mögött: AST - Példa ASTNode root = parser.createAST(null); root.accept(new ASTVisitor() { public boolean visit(CastExpression ce) { fCastCount++; } }); Számoljuk a találatokat

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 33 Java Development Tooling  AST módosítás −A forráskód módosítása helyett az AST-n dolgozzunk −Leíró megközelítés ●Definiáljuk a változtatásokat, de nem hajtjuk végre ●Több műveletben használható marad az AST ●Lehetőség van preview készítésére is −Módosító megközelítés ●Közvetlen AST módosítás ●Az előző megoldásra alapuló implementáció

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 34 Java Development Tooling  AST módosítás −Újraíró megközelítés ●Őrizzük meg a felhasználói formázást és jelöléseket ●Generáljuk egy szerkesztő szkriptet a módosításhoz

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 35 Java Development Tooling  Összességében −Erőteljes program manipulációs szolgáltatások ●Java Model, Keresés, és AST (DOM) ●Lehetőség saját toolok csatlakoztatására ●Programozottan is elérhető szolgáltatások  Vizuális editor,  EMF,  Metrika-pluginek számára ●Az Eclipse 3.1 már támogatja a J2SE 5.0 -t

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 36 Eclipse architektúra Eclipse Runtime Platform Integrated Dev. Env. JDT RCP PDECDT Contributed plugins Plugin Development Environment Saját plugin-ek fejlesztésére Támogatás a futtatáshoz Támogatás a plugin definíció elkészítéséhez Támogatás a plugin publikáláshoz

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 37 Plugin development environment  Miből áll egy plugin? −Egy könyvtár (amiben a többi elem van) −Egy plugin leíró (plugin.xml) −Egy plugin manifest (manifest.mf) −A szükséges Java library-k (.jar)

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 38 Plugin development environment  Plugin.xml −Deklarálja a plugin nevét −Verziószámát −Szerzőjét −Függőségeit −Az implementált kiegészítéseket −A felkínált kiegészítési lehetőségeket −A plugin osztály nevét

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 39 Plugin development environment  Plugin függőségek −Megadja, hogy a plugin futásához mely más pluginok kellenek −És ezeknek mely verziója szükséges

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 40 Plugin development environment  Kiegészítési lehetőségek (extension points) −Az Eclipse filozófiájának lényege, hogy bármely funkció kiegészíthető −A lehetséges helyek az extension point-ok −Ezek definiálnak egy xml sémát ●Ebben a formában várják a kiegészítések leírását ●Megköthetik, hogy a kiegészítő osztálynak mely interfészt kell implementálnia

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 41 Plugin development environment  Példa

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 42 Plugin development environment  Példa Az extension point id-ja -> egyedi kell legyen a deklaráló pluginban

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 43 Plugin development environment  Példa Az extension point neve

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 44 Plugin development environment  Példa Az extension point sémájának helye

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 45 Plugin development environment  Kiegészítések (extensions) −Egy extension point-hoz kapcsolódik −Új viselkedést ad a rendszerhez −A plugin-xml-ben lehet megadni a leírását ●Az extension point sémájának megfelelően −Egy ponthoz általában tetszőleges számú kiegészítés csatlakozhat egy időben

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 46 Plugin development environment  Kiegészítések (extensions) −Egy extension point-hoz kapcsolódik −Új viselkedést ad a rendszerhez −A plugin-xml-ben lehet megadni a leírását ●Az extension point sémájának megfelelően −Egy ponthoz általában tetszőleges számú kiegészítés csatlakozhat egy időben

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 47 Plugin development environment  Példa

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 48 Plugin development environment  Példa Az extension point id-ja (kiegészítve a deklaráló lpugin id- jával

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 49 Plugin development environment  Példa A pont-specifikus definíció első eleme

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 50 Plugin development environment  Példa A kiegészítést implementáló osztály neve

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 51 Plugin development environment  Manifest.mf −Eclipse 3.0-tól ajánlott −Részben átveszi a plugin.xml funkcióját −Meta-adatokat tartalmaz a pluginról ●Név, verzió, exportált csomagok… −Illeszkedik az OSGi Alliance ajánlásához ● ●OSGi = Open Services Gateway initiative

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 52 Plugin development environment  Plugin fejlesztés −Elvileg az eddigiek elkészíthetők kézzel is −De plugin projektként kényelmesebb −Támogatás a definícióhoz (plugin.xml, manifest) −Támogatás a teszteléshez ●Futtatás külön Eclipse workbench-ben (runtime workbench) ●Nem zavarja az éles környezetet ●Debug is lehetséges

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 53 Plugin development environment  Feaure-k −Egy vagy több plugin gyűjtésére −Egyszerre aktiválhatóak, letilthatóak −„branding” ●Cégjelzés ●Update lehetőség −feature.xml – a feature leírására (a plugin.xml analógiájára)

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 54 Plugin development environment  Fragment-ek −Utólagos kiegészítés egy telepített pluginhoz −Összefésülésre kerül a szülő pluginnal −„service pack” jelleg ●Pl. új nyelv hozzáadása a GUI-hoz −Saját manifeszt (hasonló a plugin.xml-hez)

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 55 Plugin development environment  Update site-ok −Külön projekt az update site-ok létrehozására ●Feature-k tárolása, publikálása ●Automatikus letöltés kezelése −Megadható mely feature-k mely verziói érhetőek el −Szimpla statikus weboldal, mely bármely szerverre felmásolható −Lehetőség van copyright, egyebek megadására

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 56 Eclipse architektúra Eclipse Runtime Platform Integrated Dev. Env. JDT RCP PDECDT Contributed plugins C/C++ Development Tools C/C++ fejlesztés támogatása külső fordító és debug támogatás Make támogatás

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 57 CDT  Managed make projektek −Automatikus makefile generálás a projekthez −Külső make parancs használható (például gnu make) −Nyilvántartja a függőségeket, szükséges librarary- ket

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 58 CDT  Standard make projektek −Saját makefile szükséges −A make parancs meghívása automatikus −Több manuális munka −Speciális eseteket is tudunk kezelni

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 59 CDT  Debug −Együtt tud műkodni a gdb-vel −Brakepointok megadása −Szokásos parancsok kezelése −Változók, regiszterek, … megjelenítése

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 60 Eclipse architektúra Eclipse Runtime Platform Integrated Dev. Env. JDT RCP PDECDT Contributed plugins Saját pluginok – szabad a pálya!

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 61 Eclipse architektúra Eclipse Runtime Platform Integrated Dev. Env. JDT RCP PDECDT Contributed plugins Rich client platform alkalmazások, melyek az Eclipse Runtime Platformra épülnek

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 62 RCP  Kliens alkalmazások készítésére  Melyek az Eclipse alapszolgáltatásait használják  De nem az IDE-ben futnak  Konvencionális pluginként implementálhatóak  Más pluginokat is használhatnak  Később bőven lesz róla szó!

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 63 Eclipse Platoform  VÉGE  Jövő héten SWT  Jövő héten labor is lesz!