- IR2 / TP noté -


> Second exercice (/5 pts)

Téléchargez le nouveau Main ici (attention, sauvegardez votre Main avant). Lorsque l'on souhaite créer un GraphicMultiPlatform (à partir d'un Character) et l'afficher, beaucoup de fonctions doivent être appelées selon que l'on souhaite créer un GraphicMultiPlatform pour l'afficher sur PC, sur Iphone, ou sur GameBoy. Si l'on appelle pas les bonnes fonctions, ou que l'on appelle trop de fonctions, une erreur d'affiche à l'écran. Testez le Main directement : un erreur devrait s'afficher.

Dans le Main, vous verrez, en commentaires, les différentes instructions à exécuter pour afficher un GraphicMultiPlatform en version PC, en version Iphone, ou bien en version Gameboy. Décommentez les différents blocs de code afin d'afficher un GraphicMultiPlatform pour le PC, pour l'Iphone, ou pour la GameBoy.

                   


On souhaiterait obtenir un système assez simple pour créer des GraphicMultiPlatform qui peuvent être directement affichés, sans qu'il soit nécessaire d'appeler toutes ces fonctions dans le Main.

Contraintes : Si l'on modifie (ajouter ou retirer des fonctions) la façon de créer des GraphicMultiPlatform pour le PC, l'Iphone ou la Gameboy, votre code doit facilement s'adapter. Si par exemple, on décide que pour créer un GraphicMultiPlatform pour Iphone, il ne faut pas appeler la fonction load3denvironments, un minimum de code devra être modifié.
De plus, il faudra avoir, dans le Main ou dans une autre classe, un code générique pour la création des
GraphicMultiPlatform pour PC, des Iphone, ou des Gameboy (le même code pour les trois). Si, par exemple, la façon de créer des GraphicMultiPlatform pour IPhone est changée en retirant la fonction load3denvironments, votre code générique ne devra pas changer.

Indice : vous aurez besoin de créer trois classes constructeurs spécialisés.


Pensez à sauvegarder votre Main dans un autre fichier, par exemple Main2.java, car vous allez devoir le remplacer à l'exercice suivant.


Continuons avec le troisième exercice