SlideShare ist ein Scribd-Unternehmen logo
1 von 6
Downloaden Sie, um offline zu lesen
Module : Atelier de Génie Logiciel

Institut Supérieur d'Informatique

Niveau : L2-SIL-ARS-SE

Année Universitaire : 2010-2011

ECLIPSE

I

Environnement de Développement : Eclipse
Eclipse est un environnement de développement intégré libre extensible, universel et
polyvalent, permettant de créer des projets de développement mettant en œuvre n'importe quel
langage de programmation. Eclipse IDE est principalement écrit en Java (à l'aide de la
bibliothèque graphique SWT, d'IBM), et ce langage, grâce à des bibliothèques spécifiques, est
également utilisé pour écrire des extensions.
La spécificité d'Eclipse IDE (Integrated Development Environement) vient du fait
de son architecture totalement développée autour de la notion de plugin (en conformité avec la
norme OSGi) : toutes les fonctionnalités de cet atelier logiciel sont développées en tant que
plug-in.
Plusieurs logiciels commerciaux sont basés sur ce logiciel libre, comme par
exemple IBM Lotus Notes 8, IBM Symphony ou WebSphere Studio Application Developer.

II Démarrer Eclipse
− Ouvrez l'IDE Eclipse, on vous demandera de choisir l'espace de travail dans lequel vous
allez trouver vos projets. Tapez le chemin du répertoire que vous avez créé sur le bureau. Si
vous n'avez pas encore créé d'espace de travail, eclipse le créera pour vous.
− Fermez la fenêtre de bienvenue qui apparaît.
− Vous vous trouvez actuellement dans votre espace de travail. La figure suivante vous
indique les différentes vues disponibles.

Mme. Lilia SFAXI

Page 1/6
Module : Atelier de Génie Logiciel

Institut Supérieur d'Informatique

Niveau : L2-SIL-ARS-SE

Année Universitaire : 2010-2011

2
3
1

4

Les vues représentent :
(1) : L'arborescence des projets que vous avez créé sous Eclipse. Dans cette fenêtre, vous
trouverez l'ensemble de vos fichiers.
(2) : C'est la vue principale. Elle montre le contenu des fichiers ouverts, vous pouvez y
modifier vos codes.
(3) : Cette vue est optionnelle, elle peut contenir par exemple une vue schématisée du
contenu de votre code, les classes, les variables...
(4) : Cette vue représente les sorties de votre programme. Elle contient un onglet
affichant les erreurs si elles existent, et surtout un onglet qui représente la console.
En plus des menus, des raccourcis sont offerts en haut de votre logiciel pour faciliter les
accès aux principales fonctionnalités, notamment la compilation, l'exécution, le débogage...

Mme. Lilia SFAXI

Page 2/6
Module : Atelier de Génie Logiciel
Niveau : L2-SIL-ARS-SE

Institut Supérieur d'Informatique
Année Universitaire : 2010-2011

III Création d'un Nouveau Projet
III.1. Helloworld – Version simplifiée
− Créez un nouveau projet C. Pour cela, appuyez sur File → New → Other.
− Dans la fenêtre qui apparaît, choisissez C/C++ -> C Project, puis cliquez sur Next

− Tapez comme indiqué le nom de votre projet, on l'appellera « Helloworld ». Conservez les
réglages par défaut, et appuyez sur Finish.
− Si la fenêtre suivante apparaît, cliquez sur Yes: Cela permettra à Eclipse d'arrager les vues
dans votre espace de travail de la manière la plus adéquate pour l'utilisation de C/C++.

− Dans l'espace de travail, sous l'onglet Project Explorer, vous verrez que le projet est créé, et
qu'il contient déjà un répertoire includes, qui doit contenir tous les fichiers headers qui sont
utilisés dans votre projet, en plus des fichiers headers standards qui sont déjà présents.

Mme. Lilia SFAXI

Page 3/6
Module : Atelier de Génie Logiciel

Institut Supérieur d'Informatique

Niveau : L2-SIL-ARS-SE

Année Universitaire : 2010-2011

− Créer un répertoire source qui doit contenir tous vos fichiers sources (.c). Pour cela, faites un
clic-droit sur le projet Helloworld et choisissez New → Source Folder. Nommez-le src.
− Pour créer un fichier source, faites un clic-droit sur le répertoire src, et sélectionnez New →
Source File. Dans la fenêtre qui apparaît, tapez le nom de votre fichier source : Helloworld.c
− Le fichier source généré apparaîtra sous le répertoire src. Double-cliquez dessus pour
modifier son code dans la partie édition. Tapez le code suivant :
#include <stdio.h>
#include <stdlib.h>
int main(void) {
puts("Hello World!");
return EXIT_SUCCESS;
}

− Pour générer le fichier exécutable, cliquez sur

ou Project → Build Project. Vous verrez

qu'un répertoire Binaries est créé, et qui contient un fichier exécutable Helloworld.
− Pour exécuter le programme, cliquer sur

, ou faites un clic-droit sur le fichier généré, et

aller vers Run As→ Local C/C++ Application. Vous verrez dans la console le message :
Hello World!

III.2. Helloworld – Ajout d'arguments
Dans cette partie, nous allons ajouter des arguments au programme.
− Créer sous le répertoire src, un nouveau fichier source nommé HelloArgs.c.
− Dans le code de la méthode main, remplacer l'appel à puts par l'instruction suivante :
printf("Hello %s!",argv[1]);

− Après un Build, pour définir des arguments au programme, cliquer sur la flèche à côté de
l'icône

d'exécution

et sélectionner Run Configurations, ou cliquer votre exécutable, et

aller à Run -> Run Configurations... La fenêtre suivante va apparaître.

Mme. Lilia SFAXI

Page 4/6
Module : Atelier de Génie Logiciel
Niveau : L2-SIL-ARS-SE

Institut Supérieur d'Informatique
Année Universitaire : 2010-2011

− Dans la partie de gauche, si vous ne trouvez pas d'icône Helloworld sous C/C++
Applications, sélectionner C/C++ Application, puis cliquer sur l'icône

(en haut, à

gauche), pour ajouter une nouvelle configuration. Vous verrez que votre classe Helloworld a
été ajoutée sous C/C++ Application.
− Sélectionner l'onglet Arguments (ci-dessus encadré en rouge) et, dans le cadre Program
Arguments, tapez simplement votre nom.
− Cliquer ensuite sur Run. Vous verrez dans la console l'affichage "Hello votre_nom!".

Mme. Lilia SFAXI

Page 5/6
Module : Atelier de Génie Logiciel
Niveau : L2-SIL-ARS-SE

Institut Supérieur d'Informatique
Année Universitaire : 2010-2011

IV Exercices
Exercice 1
Ecrire un programme qui affiche la moyenne d'une suite d'entiers positifs entrés au
clavier. On arrêtera la saisie quand le nombre -1 est entré, comme dans l'exemple suivant :
Entrez un entier positif : 5
Entrez un entier positif : 2
Entrez un entier positif : 3
Entrez un entier positif : -1
La moyenne de ces 3 entiers vaut 3.333333

Exercice 2
On souhaite implémenter une classe C++ représentant un compteur entier. Un tel objet se
caractérise par :
•

Une valeur entière, positive ou nulle, nulle à l'origine.

•

Le fait qu'il ne peut varier que par pas de 1 (incrémentation ou décrémentation). On
convient qu'une décrémentation d'un compteur nul est sans effet.

•

Il s'agit de créer une classe Compteur pour rendre le service demandé. On écrira en
outre un petit programme de test qui :
1. créera un compteur et affichera sa valeur;
2. l'incrémentera 10 fois, puis affichera à nouveau sa valeur;
3. le décrémentera 20 fois, puis affichera une troisième fois sa valeur
La sortie de ce programme doit donner (quelque chose comme) "0 10 0"

Exercice 2
Ecrire un programme en C++ utilisant une classe rectangle dont le constructeur prend
deux paramètres, largeur et hauteur et qui offre les fonctions suivantes :
• calcul du périmètre
• calcul de la surface
• affichage
Mme. Lilia SFAXI

Page 6/6

Weitere ähnliche Inhalte

Was ist angesagt?

Android-Tp3: fragments et menus
Android-Tp3: fragments et menusAndroid-Tp3: fragments et menus
Android-Tp3: fragments et menusLilia Sfaxi
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisationAmir Souissi
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceLilia Sfaxi
 
Gestion et Suivi des Projets informatique
Gestion et Suivi des Projets informatiqueGestion et Suivi des Projets informatique
Gestion et Suivi des Projets informatiqueJihed Kaouech
 
Cv ines ouaz
Cv ines ouazCv ines ouaz
Cv ines ouazInes Ouaz
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiqueOussama Yoshiki
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Ilyas CHAOUA
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-CorrectionLilia Sfaxi
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesLilia Sfaxi
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Ben Abdelwahed Slim
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriMansouri Khalifa
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLwebreaker
 
Uml 2 pratique de la modélisation
Uml 2  pratique de la modélisationUml 2  pratique de la modélisation
Uml 2 pratique de la modélisationNassim Amine
 
Intelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheIntelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheMohamed Heny SELMI
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UMLAmir Souissi
 

Was ist angesagt? (20)

Android-Tp3: fragments et menus
Android-Tp3: fragments et menusAndroid-Tp3: fragments et menus
Android-Tp3: fragments et menus
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de Séquence
 
Introduction à ASP.NET
Introduction à ASP.NETIntroduction à ASP.NET
Introduction à ASP.NET
 
Gestion et Suivi des Projets informatique
Gestion et Suivi des Projets informatiqueGestion et Suivi des Projets informatique
Gestion et Suivi des Projets informatique
 
Cv ines ouaz
Cv ines ouazCv ines ouaz
Cv ines ouaz
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatique
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...
 
Cours uml
Cours umlCours uml
Cours uml
 
Tp n 1 linux
Tp n 1 linuxTp n 1 linux
Tp n 1 linux
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications Mobiles
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
 
Diagramme d'activité en UML
Diagramme d'activité en UMLDiagramme d'activité en UML
Diagramme d'activité en UML
 
Java RMI
Java RMIJava RMI
Java RMI
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
 
Uml 2 pratique de la modélisation
Uml 2  pratique de la modélisationUml 2  pratique de la modélisation
Uml 2 pratique de la modélisation
 
Intelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de rechercheIntelligence Artificielle - Algorithmes de recherche
Intelligence Artificielle - Algorithmes de recherche
 
diagramme de séquence UML
diagramme de séquence UMLdiagramme de séquence UML
diagramme de séquence UML
 

Andere mochten auch

Chp1 - Introduction à l'AGL
Chp1 - Introduction à l'AGLChp1 - Introduction à l'AGL
Chp1 - Introduction à l'AGLLilia Sfaxi
 
Chp5 - Les outils CASE
Chp5 - Les outils CASEChp5 - Les outils CASE
Chp5 - Les outils CASELilia Sfaxi
 
Chp6 - De UML vers C++
Chp6 - De UML vers C++Chp6 - De UML vers C++
Chp6 - De UML vers C++Lilia Sfaxi
 
Chp2 - Cahier des Charges
Chp2 - Cahier des ChargesChp2 - Cahier des Charges
Chp2 - Cahier des ChargesLilia Sfaxi
 
Tp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-EclipseTp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-EclipseLilia Sfaxi
 
Software Engineering - chp0- introduction
Software Engineering - chp0- introductionSoftware Engineering - chp0- introduction
Software Engineering - chp0- introductionLilia Sfaxi
 
Software Engineering - chp7- tests
Software Engineering - chp7- testsSoftware Engineering - chp7- tests
Software Engineering - chp7- testsLilia Sfaxi
 
Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1 Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1 Lilia Sfaxi
 
Chp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat TransitionChp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat TransitionLilia Sfaxi
 
BI : Analyse des Données avec Mondrian
BI : Analyse des Données avec Mondrian BI : Analyse des Données avec Mondrian
BI : Analyse des Données avec Mondrian Lilia Sfaxi
 
Software Engineering - chp8- deployment
Software Engineering - chp8- deploymentSoftware Engineering - chp8- deployment
Software Engineering - chp8- deploymentLilia Sfaxi
 
BigData_TP5 : Neo4J
BigData_TP5 : Neo4JBigData_TP5 : Neo4J
BigData_TP5 : Neo4JLilia Sfaxi
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopLilia Sfaxi
 

Andere mochten auch (20)

Chp1 - Introduction à l'AGL
Chp1 - Introduction à l'AGLChp1 - Introduction à l'AGL
Chp1 - Introduction à l'AGL
 
Chp5 - Les outils CASE
Chp5 - Les outils CASEChp5 - Les outils CASE
Chp5 - Les outils CASE
 
Chp4 - UML
Chp4 - UMLChp4 - UML
Chp4 - UML
 
Tp3 - UML
Tp3 - UMLTp3 - UML
Tp3 - UML
 
Chp3 - IHM
Chp3 - IHMChp3 - IHM
Chp3 - IHM
 
Chp6 - De UML vers C++
Chp6 - De UML vers C++Chp6 - De UML vers C++
Chp6 - De UML vers C++
 
Chp2 - Cahier des Charges
Chp2 - Cahier des ChargesChp2 - Cahier des Charges
Chp2 - Cahier des Charges
 
UML 2
UML 2UML 2
UML 2
 
Tp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-EclipseTp1 - Initiation à Java-Eclipse
Tp1 - Initiation à Java-Eclipse
 
Tp5 - WINDEV
Tp5 - WINDEVTp5 - WINDEV
Tp5 - WINDEV
 
Tp4 - PHP
Tp4 - PHPTp4 - PHP
Tp4 - PHP
 
Software Engineering - chp0- introduction
Software Engineering - chp0- introductionSoftware Engineering - chp0- introduction
Software Engineering - chp0- introduction
 
Software Engineering - chp7- tests
Software Engineering - chp7- testsSoftware Engineering - chp7- tests
Software Engineering - chp7- tests
 
Uml
UmlUml
Uml
 
Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1 Sécurité des Systèmes Répartis- Partie 1
Sécurité des Systèmes Répartis- Partie 1
 
Chp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat TransitionChp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat Transition
 
BI : Analyse des Données avec Mondrian
BI : Analyse des Données avec Mondrian BI : Analyse des Données avec Mondrian
BI : Analyse des Données avec Mondrian
 
Software Engineering - chp8- deployment
Software Engineering - chp8- deploymentSoftware Engineering - chp8- deployment
Software Engineering - chp8- deployment
 
BigData_TP5 : Neo4J
BigData_TP5 : Neo4JBigData_TP5 : Neo4J
BigData_TP5 : Neo4J
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans Hadoop
 

Ähnlich wie Tp1 - Eclipse

Programmation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptxProgrammation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptxOlyvierNzighou1
 
Programmation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptxProgrammation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptxOlyvierNzighou1
 
TP1 Atelier C++/ GL2 INSAT / Tunisie
TP1 Atelier C++/ GL2 INSAT / TunisieTP1 Atelier C++/ GL2 INSAT / Tunisie
TP1 Atelier C++/ GL2 INSAT / TunisieMariem ZAOUALI
 
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour androidDébuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour androidBosco Basabana
 
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
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipseISIG
 
Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)ISIG
 

Ähnlich wie Tp1 - Eclipse (20)

openFrameworks
openFrameworksopenFrameworks
openFrameworks
 
Microsoft07coursbaptiste
Microsoft07coursbaptisteMicrosoft07coursbaptiste
Microsoft07coursbaptiste
 
Fascicule tp programmation c
Fascicule tp programmation cFascicule tp programmation c
Fascicule tp programmation c
 
Td pascal tdD
Td pascal tdDTd pascal tdD
Td pascal tdD
 
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptxProgrammation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
 
Programmation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptxProgrammation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptx
 
TP1 Atelier C++/ GL2 INSAT / Tunisie
TP1 Atelier C++/ GL2 INSAT / TunisieTP1 Atelier C++/ GL2 INSAT / Tunisie
TP1 Atelier C++/ GL2 INSAT / Tunisie
 
Chapitre 01 - Notions de base
Chapitre 01 - Notions de baseChapitre 01 - Notions de base
Chapitre 01 - Notions de base
 
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour androidDébuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
Débuter avec phonegap (APACHE CORDOVA) dans eclipse pour android
 
Eclipse
EclipseEclipse
Eclipse
 
introduction au CPP
introduction au CPPintroduction au CPP
introduction au CPP
 
Chap android
Chap androidChap android
Chap android
 
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
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipse
 
Plugins Xcode
Plugins XcodePlugins Xcode
Plugins Xcode
 
Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)
 
Apache Cordova 3.3 de zéro
Apache Cordova 3.3 de zéroApache Cordova 3.3 de zéro
Apache Cordova 3.3 de zéro
 
Eclipse Impress
Eclipse ImpressEclipse Impress
Eclipse Impress
 
Chapitre 1
Chapitre 1Chapitre 1
Chapitre 1
 

Mehr von Lilia Sfaxi

chp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfLilia Sfaxi
 
Plan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfLilia Sfaxi
 
Lab1-DB-Cassandra
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-CassandraLilia Sfaxi
 
TP1-UML-Correction
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-CorrectionLilia Sfaxi
 
TP0-UML-Correction
TP0-UML-CorrectionTP0-UML-Correction
TP0-UML-CorrectionLilia Sfaxi
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-CorrectionLilia Sfaxi
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-SéquencesLilia Sfaxi
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-CorrectionLilia Sfaxi
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correctionLilia Sfaxi
 
Android - Tp1 - installation et démarrage
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrageLilia Sfaxi
 
Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Lilia Sfaxi
 
Android - Tp3 - intents
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intentsLilia Sfaxi
 
Android - TPBonus - web services
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web servicesLilia Sfaxi
 
Android - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancésAndroid - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancésLilia Sfaxi
 
Android - Tp 5 - stockage de données
Android - Tp 5 -  stockage de donnéesAndroid - Tp 5 -  stockage de données
Android - Tp 5 - stockage de donnéesLilia Sfaxi
 

Mehr von Lilia Sfaxi (20)

chp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdf
 
Plan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdf
 
Lab3-DB_Neo4j
Lab3-DB_Neo4jLab3-DB_Neo4j
Lab3-DB_Neo4j
 
Lab2-DB-Mongodb
Lab2-DB-MongodbLab2-DB-Mongodb
Lab2-DB-Mongodb
 
Lab1-DB-Cassandra
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-Cassandra
 
TP1-UML-Correction
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-Correction
 
TP0-UML-Correction
TP0-UML-CorrectionTP0-UML-Correction
TP0-UML-Correction
 
TD4-UML
TD4-UMLTD4-UML
TD4-UML
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-Séquences
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-Correction
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
TD1 - UML - DCU
TD1 - UML - DCUTD1 - UML - DCU
TD1 - UML - DCU
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Android - Tp1 - installation et démarrage
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrage
 
Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques
 
Android - Tp3 - intents
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intents
 
Android - TPBonus - web services
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web services
 
Android - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancésAndroid - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancés
 
Android - Tp 5 - stockage de données
Android - Tp 5 -  stockage de donnéesAndroid - Tp 5 -  stockage de données
Android - Tp 5 - stockage de données
 

Tp1 - Eclipse

  • 1. Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique Niveau : L2-SIL-ARS-SE Année Universitaire : 2010-2011 ECLIPSE I Environnement de Développement : Eclipse Eclipse est un environnement de développement intégré libre extensible, universel et polyvalent, permettant de créer des projets de développement mettant en œuvre n'importe quel langage de programmation. Eclipse IDE est principalement écrit en Java (à l'aide de la bibliothèque graphique SWT, d'IBM), et ce langage, grâce à des bibliothèques spécifiques, est également utilisé pour écrire des extensions. La spécificité d'Eclipse IDE (Integrated Development Environement) vient du fait de son architecture totalement développée autour de la notion de plugin (en conformité avec la norme OSGi) : toutes les fonctionnalités de cet atelier logiciel sont développées en tant que plug-in. Plusieurs logiciels commerciaux sont basés sur ce logiciel libre, comme par exemple IBM Lotus Notes 8, IBM Symphony ou WebSphere Studio Application Developer. II Démarrer Eclipse − Ouvrez l'IDE Eclipse, on vous demandera de choisir l'espace de travail dans lequel vous allez trouver vos projets. Tapez le chemin du répertoire que vous avez créé sur le bureau. Si vous n'avez pas encore créé d'espace de travail, eclipse le créera pour vous. − Fermez la fenêtre de bienvenue qui apparaît. − Vous vous trouvez actuellement dans votre espace de travail. La figure suivante vous indique les différentes vues disponibles. Mme. Lilia SFAXI Page 1/6
  • 2. Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique Niveau : L2-SIL-ARS-SE Année Universitaire : 2010-2011 2 3 1 4 Les vues représentent : (1) : L'arborescence des projets que vous avez créé sous Eclipse. Dans cette fenêtre, vous trouverez l'ensemble de vos fichiers. (2) : C'est la vue principale. Elle montre le contenu des fichiers ouverts, vous pouvez y modifier vos codes. (3) : Cette vue est optionnelle, elle peut contenir par exemple une vue schématisée du contenu de votre code, les classes, les variables... (4) : Cette vue représente les sorties de votre programme. Elle contient un onglet affichant les erreurs si elles existent, et surtout un onglet qui représente la console. En plus des menus, des raccourcis sont offerts en haut de votre logiciel pour faciliter les accès aux principales fonctionnalités, notamment la compilation, l'exécution, le débogage... Mme. Lilia SFAXI Page 2/6
  • 3. Module : Atelier de Génie Logiciel Niveau : L2-SIL-ARS-SE Institut Supérieur d'Informatique Année Universitaire : 2010-2011 III Création d'un Nouveau Projet III.1. Helloworld – Version simplifiée − Créez un nouveau projet C. Pour cela, appuyez sur File → New → Other. − Dans la fenêtre qui apparaît, choisissez C/C++ -> C Project, puis cliquez sur Next − Tapez comme indiqué le nom de votre projet, on l'appellera « Helloworld ». Conservez les réglages par défaut, et appuyez sur Finish. − Si la fenêtre suivante apparaît, cliquez sur Yes: Cela permettra à Eclipse d'arrager les vues dans votre espace de travail de la manière la plus adéquate pour l'utilisation de C/C++. − Dans l'espace de travail, sous l'onglet Project Explorer, vous verrez que le projet est créé, et qu'il contient déjà un répertoire includes, qui doit contenir tous les fichiers headers qui sont utilisés dans votre projet, en plus des fichiers headers standards qui sont déjà présents. Mme. Lilia SFAXI Page 3/6
  • 4. Module : Atelier de Génie Logiciel Institut Supérieur d'Informatique Niveau : L2-SIL-ARS-SE Année Universitaire : 2010-2011 − Créer un répertoire source qui doit contenir tous vos fichiers sources (.c). Pour cela, faites un clic-droit sur le projet Helloworld et choisissez New → Source Folder. Nommez-le src. − Pour créer un fichier source, faites un clic-droit sur le répertoire src, et sélectionnez New → Source File. Dans la fenêtre qui apparaît, tapez le nom de votre fichier source : Helloworld.c − Le fichier source généré apparaîtra sous le répertoire src. Double-cliquez dessus pour modifier son code dans la partie édition. Tapez le code suivant : #include <stdio.h> #include <stdlib.h> int main(void) { puts("Hello World!"); return EXIT_SUCCESS; } − Pour générer le fichier exécutable, cliquez sur ou Project → Build Project. Vous verrez qu'un répertoire Binaries est créé, et qui contient un fichier exécutable Helloworld. − Pour exécuter le programme, cliquer sur , ou faites un clic-droit sur le fichier généré, et aller vers Run As→ Local C/C++ Application. Vous verrez dans la console le message : Hello World! III.2. Helloworld – Ajout d'arguments Dans cette partie, nous allons ajouter des arguments au programme. − Créer sous le répertoire src, un nouveau fichier source nommé HelloArgs.c. − Dans le code de la méthode main, remplacer l'appel à puts par l'instruction suivante : printf("Hello %s!",argv[1]); − Après un Build, pour définir des arguments au programme, cliquer sur la flèche à côté de l'icône d'exécution et sélectionner Run Configurations, ou cliquer votre exécutable, et aller à Run -> Run Configurations... La fenêtre suivante va apparaître. Mme. Lilia SFAXI Page 4/6
  • 5. Module : Atelier de Génie Logiciel Niveau : L2-SIL-ARS-SE Institut Supérieur d'Informatique Année Universitaire : 2010-2011 − Dans la partie de gauche, si vous ne trouvez pas d'icône Helloworld sous C/C++ Applications, sélectionner C/C++ Application, puis cliquer sur l'icône (en haut, à gauche), pour ajouter une nouvelle configuration. Vous verrez que votre classe Helloworld a été ajoutée sous C/C++ Application. − Sélectionner l'onglet Arguments (ci-dessus encadré en rouge) et, dans le cadre Program Arguments, tapez simplement votre nom. − Cliquer ensuite sur Run. Vous verrez dans la console l'affichage "Hello votre_nom!". Mme. Lilia SFAXI Page 5/6
  • 6. Module : Atelier de Génie Logiciel Niveau : L2-SIL-ARS-SE Institut Supérieur d'Informatique Année Universitaire : 2010-2011 IV Exercices Exercice 1 Ecrire un programme qui affiche la moyenne d'une suite d'entiers positifs entrés au clavier. On arrêtera la saisie quand le nombre -1 est entré, comme dans l'exemple suivant : Entrez un entier positif : 5 Entrez un entier positif : 2 Entrez un entier positif : 3 Entrez un entier positif : -1 La moyenne de ces 3 entiers vaut 3.333333 Exercice 2 On souhaite implémenter une classe C++ représentant un compteur entier. Un tel objet se caractérise par : • Une valeur entière, positive ou nulle, nulle à l'origine. • Le fait qu'il ne peut varier que par pas de 1 (incrémentation ou décrémentation). On convient qu'une décrémentation d'un compteur nul est sans effet. • Il s'agit de créer une classe Compteur pour rendre le service demandé. On écrira en outre un petit programme de test qui : 1. créera un compteur et affichera sa valeur; 2. l'incrémentera 10 fois, puis affichera à nouveau sa valeur; 3. le décrémentera 20 fois, puis affichera une troisième fois sa valeur La sortie de ce programme doit donner (quelque chose comme) "0 10 0" Exercice 2 Ecrire un programme en C++ utilisant une classe rectangle dont le constructeur prend deux paramètres, largeur et hauteur et qui offre les fonctions suivantes : • calcul du périmètre • calcul de la surface • affichage Mme. Lilia SFAXI Page 6/6