Environnements de développement



Documents pareils
Environnements de développement (intégrés)

Projet de développement. Introduction à Eclipse. Application à votre projet. Philippe Collet. Organisation. Cours 1 : principes généraux - svn

Projet de développement

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

S T L - C P S - L e s p l u g i n s E c l i p s e. - Une Introduction , Frédéric Peschanski

Bases Java - Eclipse / Netbeans

TP1 : Initiation à Java et Eclipse

Intégration de l interface graphique de Ptidej dans Eclipse

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

TP1 : Initiation à Java et Eclipse

Dossier. Développer en Java sur téléphone mobile. Benjamin Damécourt UFR SITEC Master 2 EESC 11 janvier 2012

Le moteur de workflow JBPM

Introduction à Eclipse

Générer du code à partir d une description de haut niveau

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

Web Tier : déploiement de servlets

openarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de

Java pour le Web. Cours Java - F. Michel

Approche Contract First

SII Stage d informatique pour l ingénieur

Export et Import de modèles ICAR sous Trnsys 17

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

A. Architecture du serveur Tomcat 6

TP1. Outils Java Eléments de correction

Eclipse atelier Java

ECLIPSE ET PDT (Php development tools)

4. SERVICES WEB REST 46

Vérifier la qualité de vos applications logicielle de manière continue

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

EXA1415 : Annotations

Ingénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau

Utilisation de JAVA coté Application serveur couplé avec Oracle Forms Hafed Benteftifa Novembre 2008

Ingénierie des Modèles. Méta-modélisation

Rapport de Synthèse. Création d un Générateur de modèle PADL pour le langage C++ Sébastien Colladon

Installation et prise en main

Évaluation et implémentation des langages

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

JOnAS Day 5.1. Outils de développements

les techniques d'extraction, les formulaires et intégration dans un site WEB

OpenText StreamServe Cours Customer Communication Management L essentiel

Programmation Internet Cours 4

«Centreon Status Map» Conception et développement d une application j2se

MOTEUR DE WORKFLOW Mise en oeuvre d'openwfe Version septembre 2006

[Projet S9] Rédacteurs & Contributeurs Entité Rédacteurs Contributeurs Imededdine HOSNI Olivier MARTY. Validation du document Nom Date Visa

L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

Présentation de SOFI 2.0

Accès à l'information XML par des requêtes XQuery au travers de son XSchema

GRIDKIT: Pluggable Overlay Networks for Grid Computing

Utilisation de Jakarta Tomcat

Semarchy Convergence for MDM La Plate-Forme MDM Évolutionnaire

Projet Java EE Approfondi

Cours en ligne Développement Java pour le web

Clear2Pay Belgium SA Solution B-web V4 Procédure d installation. Solution B-web V4. Procédure d installation. Clear2Pay Belgium SA Page 1 de 18

Cours 1: Java et les objets

Configuration Interface for MEssage ROuting

SonarQube : une autre vision de votre logiciel

Formation : WEbMaster

IBM DB2 Alphablox. d administration GC

La base de données XML exist. A. Belaïd

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

Livre Blanc WebSphere Transcoding Publisher

Un serveur d'archivage

PROSOP : un système de gestion de bases de données prosopographiques

Les processus métiers : concepts, modèles et systèmes

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

APIs de table pour SQL Server

Java c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/ Vue générale 2 - Mon premier programme 3 - Types de Programme Java

Le fichier Merchant Reconciliation XML

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1

Applications distribuées: le retour du client "riche"

Archivage pérenne : les formats conformes Version :

UE 8 Systèmes d information de gestion Le programme

Tutoriel d installation de Hibernate avec Eclipse

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

Chapitre I Notions de base et outils de travail

Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales

MobiTicket: une application mobile de ventes aux enchères de billets de spectacles

Vulgarisation Java EE Java EE, c est quoi?

Plan du cours. Historique du langage Nouveautés de Java 7

SITE WEB E-COMMERCE ET VENTE A DISTANCE

Introduction aux concepts d ez Publish

Comment récupérer un document OOo corrompu. Distribué par Le projet OpenOffice.org

Qu est-ce que l analyse des données qualitatives? TAMS Analyzer n est: Projets collaboratifs. TAMS Analyzer permet:

SQL Parser XML Xquery : Approche de détection des injections SQL

L archivage pérenne du document numérique au CINES. CINES (O.Rouchon) JRES Novembre 2007

Information utiles. webpage : Google+ : digiusto/

DotNet. Plan. Les outils de développement

UTILISER UN SITE COLLABORATIF

Eclipse Process Framework et Telelogic Harmony/ITSW

Intégration d'applications à "gros grain" Unité d'intégration : le "service" (interface + contrat)

CONSERVATOIRE NATIONAL DES ARTS ET METIERS CENTRE REGIONAL RHÔNE-ALPES CENTRE D'ENSEIGNEMENT DE GRENOBLE EXAMEN PROBATOIRE

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur Le 23 novembre 2012

I-JVM: une machine virtuelle Java pour l isolation de composants dans OSGi

Point sur les solutions de développement d apps pour les périphériques mobiles

CQP Développeur Nouvelles Technologies (DNT)

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

Transcription:

Environnements de développement UFR d Informatique Paris 7, LIAFA, 175 rue Chevaleret, Bureau 6A7 http://www.liafa.jussieu.fr/ sighirea/cours/edi/ Extension de la plate-forme Eclipse

Résumé 1 Rappels de la plate-forme Eclipse 2 3 4

Plate-forme Eclipse Eclipse = plate-forme + contributions (plug-ins) plate-forme un exécutif (run-time) indépendant du SE (JVM) un ensemble basique de plug-ins extensibles mécanismes (API), règles et outils pour construire de plug-in un moteur pour découvrir, charger et exécuter des plug-ins contribution (plug-in) remplit une tache (pas forcement exécutable) se connecte à (implémente) un ou plusieurs points d extension offre des points d extension coexiste avec d autres plug-ins instance (feature) = ensemble de plug-ins qui coopèrent

Architecture de la plateforme Eclipse

Discipline de contribution E. Gamma & K. Berk : Eclipse Principes, patterns et plug-in 1 Tout est contribution. 2 Une contribution n est chargée en mémoire qu au moment où elle devient nécessaire. 3 On ajoute mais on ne remplace pas. 4 Les contribution doivent respecter les interfaces. 5 Commencer toujours par récupérer la structure d une contribution similaire. 6 Ne contribuez que lorsque vous avez a apporter quelque chose d utile au niveau fonctionnel. 7 A chaque fois que possible, laisser aux autre la possibilité de contribuer à votre contribution. 8 En tant que fournisseur d un point d extension, votre contribution doit se protéger des comportements erratiques des extensions.

Constituants de contribution Interfaces configurables (extension points) : nom, type, paramètres [Search > Plug-in Search > Extension Points] connectable :...Declarations, All implémentées :...References, All Sources internes : src/, doc/ code Java, archives Jar ressources non-exécutables Sources/exécutables externes : JRE, Plug-in Dependencies librairies externes plate-forme d exécution Description : plugin.xml, META-INF d identification : nom, version, fournisseur d interfaces (implémentées et introduites) d organisation interne

Constituants de contribution Interfaces configurables (extension points) : nom, type, paramètres [Search > Plug-in Search > Extension Points] connectable :...Declarations, All implémentées :...References, All Sources internes : src/, doc/ code Java, archives Jar ressources non-exécutables Sources/exécutables externes : JRE, Plug-in Dependencies librairies externes plate-forme d exécution Description : plugin.xml, META-INF d identification : nom, version, fournisseur d interfaces (implémentées et introduites) d organisation interne

Environnement de développement de contributions (Plug-in Developement Environment) Permet de construire des plug-in en utilisant les points d extension disponibles. Choix du projet de plug-in à développer : Projet de plug-in : standard. Projet de fragment : ajout à un plug-in. Projet de d instance (feature) : conteneur de un ou plusieurs plug-in Projet de mise à jour de site : publication des instances. Ressources : fichiers, répertoires, projets, etc. Assistant de plug-in : modèles de plug-in classiques. Editeurs et formulaires spécialisés pour l écriture des fichiers des plug-in (XML, Ant, Properties, META-INF). Perspective spécialisée. Plan de travail d exécution : outil de test de plug-in

Que dit la pratique? L expérience montre que : Le développement par exemple (règle 5) est majoritaire. L extension des niveaux bas de la plate-forme demandent plus d attention. Le plus d extensions sont au niveau UI (org.eclipse.ui). Le JDT est indispensable. Il faut connaître XML, Ant, Properties.

XML (extensible Markup Language) Langage textuel pour la spécification de données structurées. Constituants : Syntaxiques : balises (markup) bien parenthésées et texte (semi-)libre. Sémantiques : ELEMENT (nom de balise), ATTRLIST (propriétés de la balise), type (structure de la balise). La sémantique est décrite dans un fichier DTD, donc autant de sématiques que de DTD. Les fichiers DTD sont des grammaires hors contexte.

Exemple d utilisation en Eclipse Le fichier plugin.xml décrit l interface de la contribution. Son type plugin.dtd. Chaque point d extension a son propre schéma, à consulter dans la page Extensions > Open extension point description. Quand on déclare un point d extension, il faut préciser un schéma (DTD) pour son utilisation. Les CDATA correspondant aux noms de contributions on une syntaxe spéciale, hiérarchique.

Pour UI d Eclipse : 1 Contribution d une action. Ex. : Salut ou Hello, World 2 Contribution d un éditeur multi-pages. Ex. : Editeur de texte avec tri. 3 Contribution à un menu contextuel. 4 Contribution d une vue. 5 Contribution d un éditeur spécialisé. Ex. : Editeur d expressions régulières.