Développer avec Greenfoot

Qu'est-ce que Greenfoot ?

Greenfoot est un logiciel qui combine un framework pour la création de « mondes » graphiques basés sur une grille à deux dimensions et un environnement de développement Java (édition, compilation, exécution, etc.).

Greenfoot est spécialement dédié à la programmation Java dans un contexte où les interactions entre objets et la visualisation des objets sont les deux éléments clés.

Le framework de développement de Greenfoot a deux objectifs : faciliter la création d'objets ayant une représentation graphique et permettre le contrôle de l'exécution d'une boucle de simulation (commandes « run », « pause » et « act ») .

Pour tout savoir sur Greenfoot, consulter le site officiel. Cette page présente uniquement les informations les plus essentielles pour développer votre projet avec Greenfoot.

Le scénario des « Wombats » dans Greenfoot.

Notion de scénario dans Greenfoot

Un « scénario » Greenfoot est un ensemble de classes Java qui forment un programme qui peut être exécuté par Greenfoot.

Un scénario s'appuie sur deux éléments principaux :

Les classes Java qui forment un scénario doivent hériter soit de la classe World, soit de la classe Actor.

Développer un scénario Greenfoot avec Eclipse

Développer dans l'environnement de développement de Greenfoot est possible mais fastidieux car il ne dispose pas de fonctionnalités telles que la compilation à la volée ou la complétion automatique du code. Pour palier à ces manques, il est possible de développer un scénario Greenfoot en utilisant l'environnement Eclipse. Suivez les étapes ci-dessous.

Vous devez avoir installé Greenfoot et Eclipse sur votre machine (et cela implique également que Java soit installé sur votre machine).

Création du projet Eclipse

Télécharger l'archive zip suivante et enregistrez-la sur votre disque.

Ne dézippez pas cette archive !!!

Importez-la dans votre workspace Eclipse en utilisant les menus :
File → Import → General → Existing Projects into Workspace → Select archive file → Browse... et sélectionnez l'archive téléchargée puis cliquez sur « finish ».

Vous obtenez ainsi un projet Eclipse configuré pour Greenfoot. Ce projet contient les éléments de base d'un scénario Greenfoot : une classe MyWorld qui représente le monde, et une classe MyActor qui représente un objet qui va évoluer dans ce monde. Vous pouvez dores-et-déjà exécuter ce scénario pour avoir une idée du résultat (voir comment faire dans la section ci-après). A vous ensuite de le modifier pour répondre aux besoins de votre projet, ce qui vous est expliqué un peu plus loin.

Exécuter un scénario Greenfoot avec Eclipse

Pour pouvoir exécuter votre scénario, vous devez indiquer à Greenfoot où trouver la classe qui représente le monde en indiquant son nom dans le fichier « standalone.properties ». Par exemple, si la classe qui représente votre monde s'appelle « MyWorld », vous devez indiquer dans le fichier « standalone.properties » :

        main.class=MyWorld

Puis, pour exécuter votre programme :

  1. Sélectionnez votre projet (cliquez dessus).
  2. Faites un clic droit puis choisissez le menu Run As → Java Application.
  3. Dans la fenêtre qui s'ouvre, choisissez « GreenfootScenarioMain ».

Vous obtenez alors la fenêtre d'exécution de Greenfoot. Vous pouvez intéragir avec votre scénario (presque) comme dans Greenfoot : déplacement des acteurs dans le monde à l'aide de la souris, exécution du scénario, exécution pas-à-pas des acteurs...

Développement du scénario avec Eclipse

Vous pouvez développer votre scénario dans Eclipse comme un programme Java « standard » : vous pouvez compléter les classes avec des attributs et des méthodes, utiliser les fonctionnalités fournies par Greenfoot, et également ajouter de nouvelles classes.

Fonctionnalités fournies par Greenfoot

Le projet que vous avez importé est configuré pour vous permettre d'utiliser l'API standard de Greenfoot. Pour savoir quelles sont les fonctionnalités proposées dans cette API, consultez la documentation en ligne. Vous pouvez également consulter la documentation complète pour programmer avec Greenfoot.

Voici quelques exemples tirés du projet Eclipse que vous venez d'installer :

Créer de nouvelles classes

Vous pouvez créer de nouvelles classes dans votre scénario. Si celles-ci ont pour but de représenter des acteurs ou de représenter le monde, n'oubliez pas de les faire hériter respectivement de la classe Actor ou de la classe World (mot-clé « extends » en Java). Vous devez également indiquer à Greenfoot que ces classes héritent d'Actor ou de World dans le fichier project.greenfoot. Par exemple, si vous créez une classe « MyActor » qui hérite d'Actor, vous devez indiquer dans ce fichier :

        class.MyActor.superclass=greenfoot.Actor

Images et sons

Si vos acteurs utilisent des images ou des sons de Greenfoot, copiez les fichiers contenant les images et les sons correspondant dans votre projet Eclipse. Vous pouvez les placer dans des répertoires « images » et « sounds » par exemple. Vous devez ensuite indiquer à Greenfoot où trouver ces fichiers en indiquant leurs chemins dans le fichier project.greenfoot. Par exemple, si l'image d'un acteur se trouve dans le répertoire « images » du projet Eclipse, vous devrez remplacer :

        class.MyActor.image=rock.png

par :

        class.MyActor.image=images/rock.png

Développer le scénario avec Greenfoot

Pour ouvrir un scénario dans Greenfoot, il suffit d'ouvrir avec Greenfoot le fichier « project.greenfoot » qui se trouve dans le répertoire qui contient l'ensemble des fichiers du scénario. Votre scénario s'affiche alors dans Greenfoot et vous pouvez l'éditer, le compiler et l'exécuter. Toutes les informations nécessaires pour utiliser Greenfoot sont décrites dans le Greenfoot Tutorial.

Si vous décidez d'utiliser à la fois Eclipse et Greenfoot en parallèle :

Documents et liens utiles



Auteur : cecile.hardebolle@supelec.fr
Dernière mise à  jour : 23 Septembre 2011