Salut à tous !
je ne sais pas si c'est la section approprié mais je pose quand même mon probleme :
voila, il y a quelques semaines, j'ai commencé à programmer un jeu avec Java2D que j'ai bien entamé. Mais en y reflechissant, je me posais la question de savoir sur quelle plate-forme je devais le développer et est ce que je pouvais passer en 3D ou non. Donc je me suis dit pourquoi pas faire plusieurs projets pour chaque plateforme. Sauf que je travaille en equipe et j'aimerais en fait séparer le modele de la vue et du controleur. Seulement voila, aprés qq jours de reflexion, je n'arrivais pas à resoudre ce casse tete :
j'ai les classse suivantes
dans le projet gameModel utilisé par le projet gameJ2ME et gameJava2D
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 import interface ObjectView { public void draw(Graphics g); } class ObjectModel { .... } class ObjectController { ObjectView view; ObjectModel model; .... }
donc dans gameJ2Me je n'aurais normalement qu' a declarer une classe :
et dans le projet gameJava2D une classe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 class ObjectJ2MEView implements ObjectView { ObjectModel ?? model ?? public void draw(Graphics g) { g.fillRect(0,0,model.width, model.height); } }
puis, dans la methode de dessin principal des deux projets :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 class ObjectJava2DView implements ObjectView { ObjectModel ?? model ?? public void draw(Graphics g) { g.fillRect(0,0,model.width, model.height); } }
sauf que dans l’interface ObjectView plus haut, je n’ai pas precisé d’import, puisqu’en fait, la classe Graphics de java2D et en j2ME n’est pas la même. Voila toutt le probleme …
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 ObjectController unObjet; public void draw(Graphics g) { unObjet.draw(g); }
Je ne sais pas comment m’y prendre. Il y a des exemples MVC en java sur le web mais je n’en ai trouvé que pour la GUI.
Voila, j’espere avoir été assez clair et attends vos conseils.
Merci d’avance.
Partager