SlideShare ist ein Scribd-Unternehmen logo
1 von 34
Développement de plug-in sous
Eclipse
Adel ESSAFI
Adel.safi@imag.fr
PLAN
 Présentation
 Fonctionnement d’Eclipse
 Développement de plugin
Présentation: un peu d’histoire ……
 La fondation Eclipse
 créé en 2001 par IBM
 consortium de sept sociétés
 2003-2004 passage d’un consortium à la fondation
Eclipse
 But : Eclipser le concurrent « sun »
 Membre
 Membres 'Strategic'
 Strategic developers
 Strategic consumers
 Membres 'Add-in Provider'
 Membres Associate
Les projets Eclipse : Top Level Projects
 Eclipse
 Eclipse Tools
 Web Tools Platform (WTP)
 Business Intelligence and Reporting Tools (BIRT)
 Test and Performance Tools Platform (TPTP)
 Data Tools Platform (DTP)
 Device Software Development Platform (DSDP)
 SOA Tools Platform (STP)
 Modeling
 Technology project
Le projet Eclipse
 Développer des applications en Java
 En 2004 : Etendu pour être utilisé pour tout type
d’application
 Caractéristique principale : Extensibilité
 Plugin
 Module chargé sous éclipse
 Le noyau d'Eclipse gère le cycle de vie des plugins
(découverte, chargement, mise à jour, déchargement…)
 SWT : Outils grqphiques communs à tous les plugin
 Deux Sous projets importants
 JDT
 PDT
Eclipse Tools
 Projets open sources liés à eclipse
 CDT : sous projet pour developper C/C++ sous eclipse
 GEF : librairie permettant la création et la manipulation de
graphiques en deux dimensions.
 VE (Visual Editor) : constructeur d'interfaces graphiques
Java
 ………………………………………………..
WTP - Web Tools Platform
 fournir des outils de
développement
d'applications Web
basées sur J2EE
 Web Standard Tools
 J2EE Standard Tools
 JSF Tools
BIRT - Business Intelligence and
Reporting Tools
 système de création de rapports pour les
applications Web
 fournit des outils pour la prise en compte des quatre
étapes de la création d'un rapport
 La récupération des données
 La transformation des données
 L'ajout de règles métier
 La mise en forme
TPTP - Eclipse Test and Performance
Tools Platform
 Outillage nécessaire pour tester les applications et
identifier les problèmes de performances
 TPTP Platform Project
 TPTP Test Tools Project
 TPTP Tracing and Profiling Tools Project
 TPTP Monitoring Tools Project
DTP - Data Tools Platform
 Outils pour la connexion aux bases de données
relationnelles
 Des assistants : définir les informations de connexion
JDBC à une base de données relationnelle.
 Un explorateur de bases de données (liste des tables,
structure des tables, …)
 Des éditeurs SQL :
 éditeur de code source
 éditeur visuel
 Un testeur de requêtes SQL : visualiser le résultat.
STP - SOA Tools Project
 Fournir les outils nécessaires à la mise en œuvre
d'architectures orientées services
 Conforme aux travaux sur une nouvelle spécification
: Service Component Architecture (SCA)
Eclipse Modeling Project
 Framework de modélisation, infrastructure de
génération de code et des applications basées sur
des modèles de données structurées.
Fonctionnement d’eclipse
Architecture d’eclipse
Interface principale
Creation d’un projet
 File -> new project
Le menu refactoring
 Aspect très important de la programmation Objet,
 Le changement de nom d'une méthode peut se
répercuter très loin dans les classes descendantes
 Le refactoring est accessible
 depuis le menu Refactor du menu principal
 depuis le menu contextuel
 une vingtaine de fonctions de refactoring existent
 Applique des modifications soit sur le type de la
classe ou de l'interface, soit réorganiser le code lui-
même
Le menu refactoring : Quelques fonctions
 Extract Method : extraire le code selectionné
 Rename...
 Move
 Change signature
 Extract local variable
Change method signature
Exécuter un projet
clic-droit sur le .java de la classe, puis de sélectionner Run As -> Java application
Exécution avec des arguments
puis Run As -> Run ->"Java application" -> "New"
Exécution avec des arguments
Exécution avec des arguments
Debogage
 débogage : permet de voir ce qui se passe quand le
programme s'exécute
 Exemples :
 consulter l'état des variables et des champs
 regarder dans quelles fonctions le programme passe et
avec quelles valeurs des paramètres
 exécuter le programme pas à pas ou fonction par
fonction
 Définir un break point
 Contrôle de l’exécution avec
Raccourcis Eclipse
 Permet d’être plus efficace en utilisant son IDE
 Catégories principales
• Édition
• Sélection
• Recherche
• Refactoring
• Source
• Debug
• Run
• Fichier
• Navigation
Raccourcis refactoring
Raccourcis Action
Alt+Maj+C Modifier la signature d'une méthode
Alt+Maj+L Extraire une variable locale
Alt+Maj+M Extraire une méthode
Alt+Maj+R Renommer
Alt+Maj+T Ouvrir le menu de refactoring
Raccourcis du menu sources
Raccourcis Action
Ctrl+Maj+/ Commenter/décommenter le bloc
Ctrl+Maj+M Importer l'élément
Ctrl+Maj+J Initier la Javadoc
Ctrl+Maj+F Formater
Ctrl+I Indenter le bloc
Ctrl+Maj+O Organiser les imports
Alt+Maj+S Ouvrir le menu rapide de source
Alt+Maj+Z
Ouvrir le menu rapide d'entourage (pour
entourer avec if, try, for, etc.)
Raccourcis Debug
Raccourcis Action
Alt+Maj+D Ouvrir le menu de lancement de debug
F11 Relancer le dernier debug
F11 Relancer le dernier debug
F8 Continuer
Ctrl+F2 Terminer
F5 Aller dans l'instruction (entrer)
F6 Aller à l'instruction suivante
F7 Sortir
Ctrl+Maj+B Ajouter/supprimer un point d'arrêt
Les plug-in sous Eclipse
 Plug-in :
 enrichir l'environnement de développement
 développer des applications Eclipse RCP
 Concrétisation de deux objectifs
 Modularité
 Extensibilité
 Fichier JAR de java
 mécanisme basique pour permettre la livraison d'une
application en plusieurs modules
Eclipse : le micro-noyau
 conçu autour d'un mécanisme de micro-noyau
 gérer le cyle de vie des modules
 découverte, chargement, déchargement, mise à jour
 Depuis Eclipse 3 :
 Réécriture du noyau d’eclipse : Equinox
Structure du plug-in
 fichier JAR + deux fichiers manifestes
 META-INF/MANIFEST.MF
 plug-in.xml
 MANIFEST.MF
 exploité par le noyau d'Eclipse, Equinox
 Contient des informations sur le plug-in
 (version, liste des classes visibles, ...)
 plugin.xml
 propre à Eclipse
 déclarer des points d'extension
 ………………………………….
Développement de plug in sous eclipse
Développement de plug in sous eclipse
Développement de plug in sous eclipse

Weitere ähnliche Inhalte

Was ist angesagt?

C# et .NET : Enigmes et puzzles
C# et .NET : Enigmes  et puzzlesC# et .NET : Enigmes  et puzzles
C# et .NET : Enigmes et puzzlesMicrosoft
 
Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018
Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018
Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018Loic Yon
 
Chapitre5: Classes et objets
Chapitre5: Classes et objetsChapitre5: Classes et objets
Chapitre5: Classes et objetsAziz Darouichi
 
Javascript un langage supérieur
Javascript un langage supérieurJavascript un langage supérieur
Javascript un langage supérieurFredy Fadel
 
Python For Data Science - French Course
Python For Data Science - French CoursePython For Data Science - French Course
Python For Data Science - French CourseHaytam EL YOUSSFI
 
Debutermatlab
DebutermatlabDebutermatlab
Debutermatlabnejmzad
 
Csharp1 : quelques elements de base
Csharp1 :  quelques elements de baseCsharp1 :  quelques elements de base
Csharp1 : quelques elements de baseAbdoulaye Dieng
 
Introduction à l'objet - Deuxième année ISIMA
Introduction à l'objet - Deuxième année ISIMAIntroduction à l'objet - Deuxième année ISIMA
Introduction à l'objet - Deuxième année ISIMALoic Yon
 
C# 5 versus Java 8... Quand C++ 11 s'invite à la fête
C# 5 versus Java 8... Quand C++ 11 s'invite à la fêteC# 5 versus Java 8... Quand C++ 11 s'invite à la fête
C# 5 versus Java 8... Quand C++ 11 s'invite à la fêteFabrice JEAN-FRANCOIS
 
Les fondamentaux du langage C
Les fondamentaux du langage CLes fondamentaux du langage C
Les fondamentaux du langage CAbdoulaye Dieng
 
Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Aziz Darouichi
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScriptAbdoulaye Dieng
 
Initiation au code : Ateliers en C# (applications desktop et mobile native)
Initiation au code : Ateliers en C# (applications desktop et mobile native)Initiation au code : Ateliers en C# (applications desktop et mobile native)
Initiation au code : Ateliers en C# (applications desktop et mobile native)Stéphanie Hertrich
 
Javascript pour les Développeurs WEB
Javascript pour les Développeurs WEBJavascript pour les Développeurs WEB
Javascript pour les Développeurs WEBAbbes Rharrab
 
Formation C# - Cours 2 - Programmation procédurale
Formation C# - Cours 2 - Programmation procéduraleFormation C# - Cours 2 - Programmation procédurale
Formation C# - Cours 2 - Programmation procéduralekemenaran
 

Was ist angesagt? (20)

C# et .NET : Enigmes et puzzles
C# et .NET : Enigmes  et puzzlesC# et .NET : Enigmes  et puzzles
C# et .NET : Enigmes et puzzles
 
Université des langages scala
Université des langages   scalaUniversité des langages   scala
Université des langages scala
 
C# langage & syntaxe
C#   langage & syntaxeC#   langage & syntaxe
C# langage & syntaxe
 
Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018
Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018
Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018
 
Chapitre5: Classes et objets
Chapitre5: Classes et objetsChapitre5: Classes et objets
Chapitre5: Classes et objets
 
Javascript un langage supérieur
Javascript un langage supérieurJavascript un langage supérieur
Javascript un langage supérieur
 
Python For Data Science - French Course
Python For Data Science - French CoursePython For Data Science - French Course
Python For Data Science - French Course
 
Debutermatlab
DebutermatlabDebutermatlab
Debutermatlab
 
Csharp1 : quelques elements de base
Csharp1 :  quelques elements de baseCsharp1 :  quelques elements de base
Csharp1 : quelques elements de base
 
Introduction à l'objet - Deuxième année ISIMA
Introduction à l'objet - Deuxième année ISIMAIntroduction à l'objet - Deuxième année ISIMA
Introduction à l'objet - Deuxième année ISIMA
 
C# 5 versus Java 8... Quand C++ 11 s'invite à la fête
C# 5 versus Java 8... Quand C++ 11 s'invite à la fêteC# 5 versus Java 8... Quand C++ 11 s'invite à la fête
C# 5 versus Java 8... Quand C++ 11 s'invite à la fête
 
Les fondamentaux du langage C
Les fondamentaux du langage CLes fondamentaux du langage C
Les fondamentaux du langage C
 
Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019Chapitre2fonctionscppv2019
Chapitre2fonctionscppv2019
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScript
 
Initiation au code : Ateliers en C# (applications desktop et mobile native)
Initiation au code : Ateliers en C# (applications desktop et mobile native)Initiation au code : Ateliers en C# (applications desktop et mobile native)
Initiation au code : Ateliers en C# (applications desktop et mobile native)
 
Tp 1 introduction à matlab
Tp 1 introduction à matlabTp 1 introduction à matlab
Tp 1 introduction à matlab
 
Composition, agrégation et immuabilité
Composition, agrégation et immuabilitéComposition, agrégation et immuabilité
Composition, agrégation et immuabilité
 
Javascript pour les Développeurs WEB
Javascript pour les Développeurs WEBJavascript pour les Développeurs WEB
Javascript pour les Développeurs WEB
 
Python avancé : Classe et objet
Python avancé : Classe et objetPython avancé : Classe et objet
Python avancé : Classe et objet
 
Formation C# - Cours 2 - Programmation procédurale
Formation C# - Cours 2 - Programmation procéduraleFormation C# - Cours 2 - Programmation procédurale
Formation C# - Cours 2 - Programmation procédurale
 

Andere mochten auch

Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de donnéesISIG
 
les Tests unitaires
les Tests unitairesles Tests unitaires
les Tests unitairesISIG
 
Notes de cours d'ordonnancement
Notes de cours d'ordonnancementNotes de cours d'ordonnancement
Notes de cours d'ordonnancementISIG
 
lpi 101 notes de cours
lpi 101 notes de courslpi 101 notes de cours
lpi 101 notes de coursISIG
 
Le microprocesseur
Le microprocesseurLe microprocesseur
Le microprocesseurISIG
 
Bouygues Tel 3 G+ Haut DéBit CompléMent
Bouygues Tel 3 G+ Haut DéBit CompléMentBouygues Tel 3 G+ Haut DéBit CompléMent
Bouygues Tel 3 G+ Haut DéBit CompléMentARTESI / AMIF
 
Amif Bouygues Tel 3 G+ Haut DéBit
Amif Bouygues Tel 3 G+ Haut DéBitAmif Bouygues Tel 3 G+ Haut DéBit
Amif Bouygues Tel 3 G+ Haut DéBitARTESI / AMIF
 
Business Intelligence
Business IntelligenceBusiness Intelligence
Business Intelligencesenejug
 
Club Optique Draka Amif 2010
Club Optique Draka Amif 2010Club Optique Draka Amif 2010
Club Optique Draka Amif 2010ARTESI / AMIF
 
Rapport PFE 2011 Zimbra
Rapport PFE 2011 ZimbraRapport PFE 2011 Zimbra
Rapport PFE 2011 ZimbraAyoub Kochbati
 
Tracer un rectangle d'or sur le sol
Tracer un rectangle d'or sur le solTracer un rectangle d'or sur le sol
Tracer un rectangle d'or sur le solMichel Hoffmann
 
Yet Another Three QVT Languages
Yet Another Three QVT LanguagesYet Another Three QVT Languages
Yet Another Three QVT LanguagesEdward Willink
 
La & edm in practice
La & edm in practiceLa & edm in practice
La & edm in practicebharati k
 
Frame latency evaluation: when simulation and analysis alone are not enough
Frame latency evaluation: when simulation and analysis alone are not enoughFrame latency evaluation: when simulation and analysis alone are not enough
Frame latency evaluation: when simulation and analysis alone are not enoughRealTime-at-Work (RTaW)
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open sourceKorteby Farouk
 
OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...
OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...
OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...OCCIware
 
01072013 e governance
01072013 e governance01072013 e governance
01072013 e governancebharati k
 
Embedded OCL Integration and Debugging
Embedded OCL Integration and DebuggingEmbedded OCL Integration and Debugging
Embedded OCL Integration and DebuggingEdward Willink
 
Collaboration and Governance of Open Source Projects
Collaboration and Governance of Open Source ProjectsCollaboration and Governance of Open Source Projects
Collaboration and Governance of Open Source ProjectsJordi Cabot
 

Andere mochten auch (20)

Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de données
 
les Tests unitaires
les Tests unitairesles Tests unitaires
les Tests unitaires
 
Notes de cours d'ordonnancement
Notes de cours d'ordonnancementNotes de cours d'ordonnancement
Notes de cours d'ordonnancement
 
lpi 101 notes de cours
lpi 101 notes de courslpi 101 notes de cours
lpi 101 notes de cours
 
Le microprocesseur
Le microprocesseurLe microprocesseur
Le microprocesseur
 
Bouygues Tel 3 G+ Haut DéBit CompléMent
Bouygues Tel 3 G+ Haut DéBit CompléMentBouygues Tel 3 G+ Haut DéBit CompléMent
Bouygues Tel 3 G+ Haut DéBit CompléMent
 
Amif Bouygues Tel 3 G+ Haut DéBit
Amif Bouygues Tel 3 G+ Haut DéBitAmif Bouygues Tel 3 G+ Haut DéBit
Amif Bouygues Tel 3 G+ Haut DéBit
 
Netcom Group
Netcom GroupNetcom Group
Netcom Group
 
Business Intelligence
Business IntelligenceBusiness Intelligence
Business Intelligence
 
Club Optique Draka Amif 2010
Club Optique Draka Amif 2010Club Optique Draka Amif 2010
Club Optique Draka Amif 2010
 
Rapport PFE 2011 Zimbra
Rapport PFE 2011 ZimbraRapport PFE 2011 Zimbra
Rapport PFE 2011 Zimbra
 
Tracer un rectangle d'or sur le sol
Tracer un rectangle d'or sur le solTracer un rectangle d'or sur le sol
Tracer un rectangle d'or sur le sol
 
Yet Another Three QVT Languages
Yet Another Three QVT LanguagesYet Another Three QVT Languages
Yet Another Three QVT Languages
 
La & edm in practice
La & edm in practiceLa & edm in practice
La & edm in practice
 
Frame latency evaluation: when simulation and analysis alone are not enough
Frame latency evaluation: when simulation and analysis alone are not enoughFrame latency evaluation: when simulation and analysis alone are not enough
Frame latency evaluation: when simulation and analysis alone are not enough
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open source
 
OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...
OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...
OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...
 
01072013 e governance
01072013 e governance01072013 e governance
01072013 e governance
 
Embedded OCL Integration and Debugging
Embedded OCL Integration and DebuggingEmbedded OCL Integration and Debugging
Embedded OCL Integration and Debugging
 
Collaboration and Governance of Open Source Projects
Collaboration and Governance of Open Source ProjectsCollaboration and Governance of Open Source Projects
Collaboration and Governance of Open Source Projects
 

Ähnlich wie Développement de plug in sous eclipse

Architecture java j2 ee a partager
Architecture java j2 ee a partagerArchitecture java j2 ee a partager
Architecture java j2 ee a partageraliagadir
 
Chaine de production pipeline
Chaine de production   pipelineChaine de production   pipeline
Chaine de production pipelineNicolas wallerand
 
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !Paris Salesforce Developer Group
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php ALTER WAY
 
Les nouveautés de Visual Studio 11
Les nouveautés de Visual Studio 11Les nouveautés de Visual Studio 11
Les nouveautés de Visual Studio 11Microsoft
 
Play Framework
Play FrameworkPlay Framework
Play FrameworkArmaklan
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicEmmanuel Hugonnet
 
Asp Au Service Des Mv Ps
Asp Au Service Des Mv PsAsp Au Service Des Mv Ps
Asp Au Service Des Mv PsGregory Renard
 
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)Amira Hakim
 
Big Data Viz (and much more!) with Apache Zeppelin
Big Data Viz (and much more!) with Apache ZeppelinBig Data Viz (and much more!) with Apache Zeppelin
Big Data Viz (and much more!) with Apache ZeppelinBruno Bonnin
 
Asp.Net Futures
Asp.Net FuturesAsp.Net Futures
Asp.Net Futuresloicbar
 
ASP.NET Futures
ASP.NET FuturesASP.NET Futures
ASP.NET Futuresloicbar
 
Génération de documents Office avec Open XML et VSTO
Génération de documents Office avec Open XML et VSTOGénération de documents Office avec Open XML et VSTO
Génération de documents Office avec Open XML et VSTOguested7f6
 
Barre pour développeur Firefox et Eclipse
Barre pour développeur Firefox et EclipseBarre pour développeur Firefox et Eclipse
Barre pour développeur Firefox et EclipseYannick Pavard
 
BlueXML Developer Studio
BlueXML Developer StudioBlueXML Developer Studio
BlueXML Developer Studiobch
 
CodeBuilder_DevOpsCenter.pptx
CodeBuilder_DevOpsCenter.pptxCodeBuilder_DevOpsCenter.pptx
CodeBuilder_DevOpsCenter.pptxThomasParaiso1
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la rechercheJohan Moreau
 
Usine logicielle à Orange Labs
Usine logicielle à Orange LabsUsine logicielle à Orange Labs
Usine logicielle à Orange LabsEmmanuel Hugonnet
 
Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 OverviewGregory Renard
 

Ähnlich wie Développement de plug in sous eclipse (20)

Architecture java j2 ee a partager
Architecture java j2 ee a partagerArchitecture java j2 ee a partager
Architecture java j2 ee a partager
 
Chaine de production pipeline
Chaine de production   pipelineChaine de production   pipeline
Chaine de production pipeline
 
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
La Tooling API, est-ce pour moi ? Bien sûr, viens voir pourquoi !
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
 
Les nouveautés de Visual Studio 11
Les nouveautés de Visual Studio 11Les nouveautés de Visual Studio 11
Les nouveautés de Visual Studio 11
 
Play Framework
Play FrameworkPlay Framework
Play Framework
 
At2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville PublicAt2008 Grenoble Hugonnet Sanlaville Public
At2008 Grenoble Hugonnet Sanlaville Public
 
Windev
WindevWindev
Windev
 
Asp Au Service Des Mv Ps
Asp Au Service Des Mv PsAsp Au Service Des Mv Ps
Asp Au Service Des Mv Ps
 
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
Transformation de carrés en cercles avec Atlas Transformation Language(ATL)
 
Big Data Viz (and much more!) with Apache Zeppelin
Big Data Viz (and much more!) with Apache ZeppelinBig Data Viz (and much more!) with Apache Zeppelin
Big Data Viz (and much more!) with Apache Zeppelin
 
Asp.Net Futures
Asp.Net FuturesAsp.Net Futures
Asp.Net Futures
 
ASP.NET Futures
ASP.NET FuturesASP.NET Futures
ASP.NET Futures
 
Génération de documents Office avec Open XML et VSTO
Génération de documents Office avec Open XML et VSTOGénération de documents Office avec Open XML et VSTO
Génération de documents Office avec Open XML et VSTO
 
Barre pour développeur Firefox et Eclipse
Barre pour développeur Firefox et EclipseBarre pour développeur Firefox et Eclipse
Barre pour développeur Firefox et Eclipse
 
BlueXML Developer Studio
BlueXML Developer StudioBlueXML Developer Studio
BlueXML Developer Studio
 
CodeBuilder_DevOpsCenter.pptx
CodeBuilder_DevOpsCenter.pptxCodeBuilder_DevOpsCenter.pptx
CodeBuilder_DevOpsCenter.pptx
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la recherche
 
Usine logicielle à Orange Labs
Usine logicielle à Orange LabsUsine logicielle à Orange Labs
Usine logicielle à Orange Labs
 
Visual Studio 2008 Overview
Visual Studio 2008 OverviewVisual Studio 2008 Overview
Visual Studio 2008 Overview
 

Kürzlich hochgeladen

Hachour_cours_Crea-Innovation_2019-VF.pdf
Hachour_cours_Crea-Innovation_2019-VF.pdfHachour_cours_Crea-Innovation_2019-VF.pdf
Hachour_cours_Crea-Innovation_2019-VF.pdfHakim HACHOUR
 
Planning de la semaine du 25 mars au 2 avril 2024
Planning de la semaine du 25 mars au 2 avril 2024Planning de la semaine du 25 mars au 2 avril 2024
Planning de la semaine du 25 mars au 2 avril 2024frizzole
 
Présentation de lancement de la SAE203 - MMI S2
Présentation de lancement de la SAE203 - MMI S2Présentation de lancement de la SAE203 - MMI S2
Présentation de lancement de la SAE203 - MMI S2JeanLucHusson
 
Exercice de FLE pour enfants sur les transports et les prépositions
Exercice de FLE pour enfants sur les transports et les prépositionsExercice de FLE pour enfants sur les transports et les prépositions
Exercice de FLE pour enfants sur les transports et les prépositionslaetitiachassagne
 
La Projection orthogonale en dessin technique
La Projection orthogonale en dessin techniqueLa Projection orthogonale en dessin technique
La Projection orthogonale en dessin techniquessuser4dbdf2
 
Formation M2i - Femmes entrepreneures : soyez actrices du changement
Formation M2i - Femmes entrepreneures : soyez actrices du changementFormation M2i - Femmes entrepreneures : soyez actrices du changement
Formation M2i - Femmes entrepreneures : soyez actrices du changementM2i Formation
 
Rapport projet de fin d'études licence PFE
Rapport projet de fin d'études licence PFERapport projet de fin d'études licence PFE
Rapport projet de fin d'études licence PFEAhmam Abderrahmane
 

Kürzlich hochgeladen (8)

Echos N102 newsletter community libraries
Echos N102 newsletter community librariesEchos N102 newsletter community libraries
Echos N102 newsletter community libraries
 
Hachour_cours_Crea-Innovation_2019-VF.pdf
Hachour_cours_Crea-Innovation_2019-VF.pdfHachour_cours_Crea-Innovation_2019-VF.pdf
Hachour_cours_Crea-Innovation_2019-VF.pdf
 
Planning de la semaine du 25 mars au 2 avril 2024
Planning de la semaine du 25 mars au 2 avril 2024Planning de la semaine du 25 mars au 2 avril 2024
Planning de la semaine du 25 mars au 2 avril 2024
 
Présentation de lancement de la SAE203 - MMI S2
Présentation de lancement de la SAE203 - MMI S2Présentation de lancement de la SAE203 - MMI S2
Présentation de lancement de la SAE203 - MMI S2
 
Exercice de FLE pour enfants sur les transports et les prépositions
Exercice de FLE pour enfants sur les transports et les prépositionsExercice de FLE pour enfants sur les transports et les prépositions
Exercice de FLE pour enfants sur les transports et les prépositions
 
La Projection orthogonale en dessin technique
La Projection orthogonale en dessin techniqueLa Projection orthogonale en dessin technique
La Projection orthogonale en dessin technique
 
Formation M2i - Femmes entrepreneures : soyez actrices du changement
Formation M2i - Femmes entrepreneures : soyez actrices du changementFormation M2i - Femmes entrepreneures : soyez actrices du changement
Formation M2i - Femmes entrepreneures : soyez actrices du changement
 
Rapport projet de fin d'études licence PFE
Rapport projet de fin d'études licence PFERapport projet de fin d'études licence PFE
Rapport projet de fin d'études licence PFE
 

Développement de plug in sous eclipse

  • 1. Développement de plug-in sous Eclipse Adel ESSAFI Adel.safi@imag.fr
  • 2. PLAN  Présentation  Fonctionnement d’Eclipse  Développement de plugin
  • 3. Présentation: un peu d’histoire ……  La fondation Eclipse  créé en 2001 par IBM  consortium de sept sociétés  2003-2004 passage d’un consortium à la fondation Eclipse  But : Eclipser le concurrent « sun »  Membre  Membres 'Strategic'  Strategic developers  Strategic consumers  Membres 'Add-in Provider'  Membres Associate
  • 4. Les projets Eclipse : Top Level Projects  Eclipse  Eclipse Tools  Web Tools Platform (WTP)  Business Intelligence and Reporting Tools (BIRT)  Test and Performance Tools Platform (TPTP)  Data Tools Platform (DTP)  Device Software Development Platform (DSDP)  SOA Tools Platform (STP)  Modeling  Technology project
  • 5. Le projet Eclipse  Développer des applications en Java  En 2004 : Etendu pour être utilisé pour tout type d’application  Caractéristique principale : Extensibilité  Plugin  Module chargé sous éclipse  Le noyau d'Eclipse gère le cycle de vie des plugins (découverte, chargement, mise à jour, déchargement…)  SWT : Outils grqphiques communs à tous les plugin  Deux Sous projets importants  JDT  PDT
  • 6. Eclipse Tools  Projets open sources liés à eclipse  CDT : sous projet pour developper C/C++ sous eclipse  GEF : librairie permettant la création et la manipulation de graphiques en deux dimensions.  VE (Visual Editor) : constructeur d'interfaces graphiques Java  ………………………………………………..
  • 7. WTP - Web Tools Platform  fournir des outils de développement d'applications Web basées sur J2EE  Web Standard Tools  J2EE Standard Tools  JSF Tools
  • 8. BIRT - Business Intelligence and Reporting Tools  système de création de rapports pour les applications Web  fournit des outils pour la prise en compte des quatre étapes de la création d'un rapport  La récupération des données  La transformation des données  L'ajout de règles métier  La mise en forme
  • 9. TPTP - Eclipse Test and Performance Tools Platform  Outillage nécessaire pour tester les applications et identifier les problèmes de performances  TPTP Platform Project  TPTP Test Tools Project  TPTP Tracing and Profiling Tools Project  TPTP Monitoring Tools Project
  • 10. DTP - Data Tools Platform  Outils pour la connexion aux bases de données relationnelles  Des assistants : définir les informations de connexion JDBC à une base de données relationnelle.  Un explorateur de bases de données (liste des tables, structure des tables, …)  Des éditeurs SQL :  éditeur de code source  éditeur visuel  Un testeur de requêtes SQL : visualiser le résultat.
  • 11. STP - SOA Tools Project  Fournir les outils nécessaires à la mise en œuvre d'architectures orientées services  Conforme aux travaux sur une nouvelle spécification : Service Component Architecture (SCA)
  • 12. Eclipse Modeling Project  Framework de modélisation, infrastructure de génération de code et des applications basées sur des modèles de données structurées.
  • 16. Creation d’un projet  File -> new project
  • 17. Le menu refactoring  Aspect très important de la programmation Objet,  Le changement de nom d'une méthode peut se répercuter très loin dans les classes descendantes  Le refactoring est accessible  depuis le menu Refactor du menu principal  depuis le menu contextuel  une vingtaine de fonctions de refactoring existent  Applique des modifications soit sur le type de la classe ou de l'interface, soit réorganiser le code lui- même
  • 18. Le menu refactoring : Quelques fonctions  Extract Method : extraire le code selectionné  Rename...  Move  Change signature  Extract local variable
  • 20. Exécuter un projet clic-droit sur le .java de la classe, puis de sélectionner Run As -> Java application
  • 21. Exécution avec des arguments puis Run As -> Run ->"Java application" -> "New"
  • 22. Exécution avec des arguments
  • 23. Exécution avec des arguments
  • 24. Debogage  débogage : permet de voir ce qui se passe quand le programme s'exécute  Exemples :  consulter l'état des variables et des champs  regarder dans quelles fonctions le programme passe et avec quelles valeurs des paramètres  exécuter le programme pas à pas ou fonction par fonction  Définir un break point  Contrôle de l’exécution avec
  • 25. Raccourcis Eclipse  Permet d’être plus efficace en utilisant son IDE  Catégories principales • Édition • Sélection • Recherche • Refactoring • Source • Debug • Run • Fichier • Navigation
  • 26. Raccourcis refactoring Raccourcis Action Alt+Maj+C Modifier la signature d'une méthode Alt+Maj+L Extraire une variable locale Alt+Maj+M Extraire une méthode Alt+Maj+R Renommer Alt+Maj+T Ouvrir le menu de refactoring
  • 27. Raccourcis du menu sources Raccourcis Action Ctrl+Maj+/ Commenter/décommenter le bloc Ctrl+Maj+M Importer l'élément Ctrl+Maj+J Initier la Javadoc Ctrl+Maj+F Formater Ctrl+I Indenter le bloc Ctrl+Maj+O Organiser les imports Alt+Maj+S Ouvrir le menu rapide de source Alt+Maj+Z Ouvrir le menu rapide d'entourage (pour entourer avec if, try, for, etc.)
  • 28. Raccourcis Debug Raccourcis Action Alt+Maj+D Ouvrir le menu de lancement de debug F11 Relancer le dernier debug F11 Relancer le dernier debug F8 Continuer Ctrl+F2 Terminer F5 Aller dans l'instruction (entrer) F6 Aller à l'instruction suivante F7 Sortir Ctrl+Maj+B Ajouter/supprimer un point d'arrêt
  • 29. Les plug-in sous Eclipse  Plug-in :  enrichir l'environnement de développement  développer des applications Eclipse RCP  Concrétisation de deux objectifs  Modularité  Extensibilité  Fichier JAR de java  mécanisme basique pour permettre la livraison d'une application en plusieurs modules
  • 30. Eclipse : le micro-noyau  conçu autour d'un mécanisme de micro-noyau  gérer le cyle de vie des modules  découverte, chargement, déchargement, mise à jour  Depuis Eclipse 3 :  Réécriture du noyau d’eclipse : Equinox
  • 31. Structure du plug-in  fichier JAR + deux fichiers manifestes  META-INF/MANIFEST.MF  plug-in.xml  MANIFEST.MF  exploité par le noyau d'Eclipse, Equinox  Contient des informations sur le plug-in  (version, liste des classes visibles, ...)  plugin.xml  propre à Eclipse  déclarer des points d'extension  ………………………………….