Partage
  • Partager sur Facebook
  • Partager sur Twitter

Creation d'un jeux de casse brique avec interface

Sujet résolu
    26 mars 2015 à 22:31:20

    Bonjour, 

    Voila j ai un projet a faire pour le lycée , un casse brique avec une interface c#  classique . Mon prof nous a lacher avec une feuille avec quelque explication un diagramme de classe mais seulement je comprend pas trop sa logique j airerais donc que vous m'aidiez a comprendre comment va fonctionner mon prograpmme (en language objet ) 

    je sais juste que mon jeux auras un objet jeux qui auras une liste d objet comme des murs une balle etc ... je vous met ci dessous l image du diagramme + les "explication du prof" 

    Je préscise que je ne veux pas de réponse complete aux probleme , juste une explication des methode et utilitée des classes !

    merci ;)

    -
    Edité par Gatito 27 mars 2015 à 10:56:10

    • Partager sur Facebook
    • Partager sur Twitter
      27 mars 2015 à 9:54:54

      Hello,

      Alors déjà je ne sais pas si c'est moi mais j'arrive pas trop à lire distinctement en si petit donc je vais pas trop pouvoir te donner un coup de main.

      Par contre, je pense qu'on devrait la faire à l'envers. L'idée c'est que tu nous présentes ce que toi tu comprends du schéma et des explications et si tu es a côté de tes pompes on te remettra dans le droit chemin ;) Ça te sera sûrement plus utile que de lire les explications pré-mâchées des membres du forum.

      • Partager sur Facebook
      • Partager sur Twitter
      Si un message vous a aidé, n'oubliez pas le +1 et de passer votre sujet en "Résolu" ! :)
        27 mars 2015 à 12:33:18

        Il vous a déjà pas mal prémâché le boulot quand même.

        J'aurai juste nommé sa classe Objet en GameObject. (en fait j'aurai aussi dissocier les aspects affichages de l'aspect collision mais bon, c'est pas forcement le plus "simple").

        -
        Edité par bacelar 27 mars 2015 à 15:19:17

        • Partager sur Facebook
        • Partager sur Twitter
        Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
          27 mars 2015 à 14:37:53

          Comme dit bacelar, je ne me vois pas ajouté quelque chose au schéma et aux explications qui sont assez claires.

          Du coup, il va sûrement falloir que tu nous donne un peu de matière côté code pour qu'on puisse t'aider là où ça coince ;)

          • Partager sur Facebook
          • Partager sur Twitter
          Si un message vous a aidé, n'oubliez pas le +1 et de passer votre sujet en "Résolu" ! :)
            27 mars 2015 à 16:05:13

            Ce que j ai du mal a comprendre c est pk il y a 2 méthode tracer et surtout par quoi je dois commencer ? dsl pour les

            -
            Edité par Gatito 27 mars 2015 à 17:18:16

            • Partager sur Facebook
            • Partager sur Twitter
              27 mars 2015 à 16:18:39

              >pk il y a 2 méthode tracer

              Je pense que vous n'avez pas encore assimilé les bases de la conception objet.

              La méthode Tracer de classe Jeu est en charge de tracer le jeu dans sont ensemble, donc les "Objet" mais aussi les autres trucs éventuels, comme le score actuel, un chat, etc...

              La méthode Tracer de la classe Objet est en charge de tracer l'objet dans l'interface homme-machine.

              La méthode Tracer de l'objet Jeu va donc appeler, entre autre, la méthode Tracer de chaque instance de Objet qui sont dans le jeu (la Palette, la Balle, les Briques, les Murs), pour qu'ils s'affichent dans l'interface homme-machine.

              • Partager sur Facebook
              • Partager sur Twitter
              Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
                27 mars 2015 à 16:30:16

                En faite quand tu ma parler du gameobjet je comprend tout de suite mieux du coup par contre a quoi sert la classe  mur par exemple ?  Si j ai compris la méthode collision de la classe jeux va appeller la méthode collisions de mon objet ! Et enfin je vais créer les objet dans une liste dans la méthode  start et tracer avec la méthode tracer ?

                -
                Edité par Gatito 27 mars 2015 à 17:27:55

                • Partager sur Facebook
                • Partager sur Twitter
                  27 mars 2015 à 17:01:41

                  Erreur double post

                  -
                  Edité par Gatito 27 mars 2015 à 17:16:41

                  • Partager sur Facebook
                  • Partager sur Twitter
                    27 mars 2015 à 18:10:46

                    >tu ma parler du gameobjet je comprend tout de suite mieux du coup

                    Une illustration du fait qu'il faut être précautionneux quand on nomme des classes, des variables, des fonctions ... ;)

                    >par contre a quoi sert la classe  mur par exemple

                    Pour l'instant, je ne vous pas trop non plus. Mais quand on commence la partie analyses d'un projet, on défini toutes les entités "physiques" qui interviennent, on essaye de bien les définir. Donc dans ce cas, les murs sont bien des choses qui interviennent dans le jeu et qui potentiellement interagissent différemment que les autres entités.

                    En phase de conception, donc après l'analyse, il est fréquent que bon nombre de ces entités fusionnent quand on utilise des Design Patern particuliers (Template Factories, Stratégie, etc...). Cela a donc tendance à réduire le nombre de classe et donc à simplifier le projet.

                    Vous vous posez de bonnes questions, mais peut-être un peu trop en avance de phase.

                    Il y a de bonne chance qu'un mur se comporte différemment du reste. Il faudra attendre l'analyse ou un refactoring pour pouvoir peut-être supprimer la classe associée.

                    >Si j ai compris la méthode collision de la classe jeux va appeller la méthode collisions de mon objet !

                    Pour confirmer cela, il nous faudrait des diagrammes de séquence et pas juste des diagrammes de classe.

                    Deplus, je pense qu'il y aura largement plus d'un objet dans le jeu. :lol:

                    >Et enfin je vais créer les objet dans une liste dans la méthode  start et tracer avec la méthode tracer ?

                    Je pense oui, il faut aussi remarquer le lien avec le diamant (notation UML) entre Jeu et Objet.

                    Pour être plus précis, je pense que la création des objets se fera dans le constructeur de Jeu.

                    Start/Stop/GameOver me paressent pas super naturelle mais c'est le genre de truc qui généralement dicté par une bibliothèque graphique.

                    P.S.: Généralement, dans les gros projets, on découpe la solution en couche pour que des dépendances liées à une bibliothèque graphique soient cantonnées dans une couche. Quand on change de bibliothèque graphique, on ne change que la couche de l'architecture qui en est dépendante, très majoritairement, la couche la plus "haut". Dans ce cadre, la classe Jeu ne devrait pas dépendre de la bibliothèque graphique mais délégué l'affichage à une classe dédiée à l'affichage.

                    • Partager sur Facebook
                    • Partager sur Twitter
                    Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
                      27 mars 2015 à 18:50:38

                      Mo, projet est beaucoup plus simple que ça ^^ pour repondre les mur a part la collision quand la balle touche un mur il sert a rien il y a juste le mur du bat qui fais perdre une vie et on a pas du tout fait autant d analize le prof nous a lâcher comme ça et on a 2 semaines . De plus je le redis c est avec l interface c# classique en mod "application windows "
                      • Partager sur Facebook
                      • Partager sur Twitter
                        27 mars 2015 à 19:59:54

                        > les mur a part la collision quand la balle touche un mur

                        Ca suffit largement pour justifier la présence d'une classe dédiée.

                        Ces particularités seront dans ses méthodes !

                        >il y a juste le mur du bat qui fais perdre une vie

                        Alors clairement, ce n'est pas un mur.

                        Je ne pense pas qu'il y ait besoin d'une classe "merde, j'ai loupé la balle, je suis mort".

                        Il faut mieux implémenter cette vérification dans "GameOver" (que j'aurai nommé "IsGameOver", car il renvoie un boolean).

                        > on a pas du tout fait autant d analize le prof nous a lâcher comme ça et on a 2 semaines

                        Il l'a faite pour vous, c'est déjà assez sympa. Il a un peu borné le parcourt, alors suivez le chemin. Cela coup un peu la créativité et ça oriente la solution. Ce n'est peut-être pas la solution la plus originale/flexible/performante/maintenable/... , mais la solution existe (il a fait l'exo. avant vous :lol:).

                        On ne faisait pas d'Informatique au lycée à mon époque, mais à la fac, on nous donnait bien moins et on avait aussi que 2 semaines.

                        > l interface c# classique en mod "application windows "

                        C'est quoi ce truc ???

                        Les "interfaces classique"  du C#, ça va de la console, à METRO, en passant par WPF, Silverlight, les Web Service, ASP.NET MVC etc...

                        C'est quoi votre "application windows " ???

                        • Partager sur Facebook
                        • Partager sur Twitter
                        Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
                          27 mars 2015 à 21:15:41

                          ba je sais pas comment expliquer , je fais nouveaux projet , application windows et puis voila ^^

                          d’ailleurs puisque j en parle , j aimerais que quand j appuis sur mon bouton start un bouton stop le remplace et je sais pas trop comment faire apparaître un bouton .

                          -
                          Edité par Gatito 27 mars 2015 à 21:27:05

                          • Partager sur Facebook
                          • Partager sur Twitter
                            29 mars 2015 à 12:13:21

                            bacelar a écrit:

                            > les mur a part la collision quand la balle touche un mur

                            Ca suffit largement pour justifier la présence d'une classe dédiée.

                            Ces particularités seront dans ses méthodes !

                            >il y a juste le mur du bat qui fais perdre une vie

                            Alors clairement, ce n'est pas un mur.

                            Je ne pense pas qu'il y ait besoin d'une classe "merde, j'ai loupé la balle, je suis mort".

                            Il faut mieux implémenter cette vérification dans "GameOver" (que j'aurai nommé "IsGameOver", car il renvoie un boolean).

                            > on a pas du tout fait autant d analize le prof nous a lâcher comme ça et on a 2 semaines

                            Il l'a faite pour vous, c'est déjà assez sympa. Il a un peu borné le parcourt, alors suivez le chemin. Cela coup un peu la créativité et ça oriente la solution. Ce n'est peut-être pas la solution la plus originale/flexible/performante/maintenable/... , mais la solution existe (il a fait l'exo. avant vous :lol:).

                            On ne faisait pas d'Informatique au lycée à mon époque, mais à la fac, on nous donnait bien moins et on avait aussi que 2 semaines.

                            > l interface c# classique en mod "application windows "

                            C'est quoi ce truc ???

                            Les "interfaces classique"  du C#, ça va de la console, à METRO, en passant par WPF, Silverlight, les Web Service, ASP.NET MVC etc...

                            C'est quoi votre "application windows " ???

                            tu vois de quoi je parle maintenant ? 

                            • Partager sur Facebook
                            • Partager sur Twitter
                              29 mars 2015 à 15:28:50

                              J'ai super bien avancer dans mon projet , mais maintenant je cherche à appeller la fonction "Deplacer " de mon objet "palette" qui est dans une liste dans ma classe jeux

                              • Partager sur Facebook
                              • Partager sur Twitter
                                31 mars 2015 à 19:19:31

                                Ok, je connais pas SharpDevelop, mais à la tête du Designer et de la boite à outils, c'est du bon vieux Winforms d'il y a 10 ans.

                                > j appuis sur mon bouton start un bouton stop le remplace et je sais pas trop comment faire apparaître un bouton .

                                L'approche la plus simple, dans ce cas de figure où les boutons sont exclusifs l'un de l'autre, c'est de n'en faire qu'un, qui change de libellé et de couleur en fonction de l'état démarré ou non (via DataBinding par exemple).

                                > maintenant je cherche à appeller la fonction "Deplacer " de mon objet "palette"

                                Vous devriez stocker une référence sur l'objet "palette" dans un champ de type Palette dans votre classe Jeu, idem pour votre objet "balle" mais avec un champ de type "Balle". Si vous considérez la possibilité d'avoir plusieurs balles ou palette simultanément, il faudra raffiner un peu.

                                • Partager sur Facebook
                                • Partager sur Twitter
                                Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
                                  1 avril 2015 à 0:40:36

                                  bacelar a écrit:

                                  >tu ma parler du gameobjet je comprend tout de suite mieux du coup

                                  Une illustration du fait qu'il faut être précautionneux quand on nomme des classes, des variables, des fonctions ... ;)

                                  Tout n'hériterait il pas de Objet par hasard en .Net (comme en Java / ou seulement les classes du framework :euh: ?)

                                  -
                                  Edité par breizhbugs 1 avril 2015 à 0:40:46

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                  ** La doc, c'est comme le PQ: ça sert à se démerder tout seul **
                                    6 avril 2015 à 11:47:22

                                    Merci pour vos réponses , j ai fini mon jeux finalement :) seulement je voudrais l'améliorer un peu surtout sur le point ou comme je dois a chaque fois effacer la balle et la retracer ça fais un effet dégueulasse de clignotement 

                                    Ce que j ai trouver ce fais avec le framwork Xna(maintenant c est monogame) et je voudrais rester sur mon winform pour l'instant ... (sinon je pourrais pas continuer mon travail en étude au lycée ) 

                                     j'avais pour idée d'utiliser des picture box mais je sais pas si je peux lier mes objet du jeux avec ça j'avoue que je suis un peu perdu ^^

                                    Pourriez vous m'aidez ? 

                                    -
                                    Edité par Gatito 6 avril 2015 à 12:05:35

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                    Anonyme
                                      7 avril 2015 à 16:35:26

                                      Bonjour,

                                      WindowsForms est pas vraiment fait pour faire des jeux...

                                      Tu l'as toi même dit, il y a le framework XNA (ou MonoGame), qui sont fais pour faire des jeux.

                                      Et ce sera nettement plus simple pour toi d'utiliser un framework comme XNA ou MonoGame.

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        8 avril 2015 à 23:40:46

                                        Oui je vais faire ça je pense...
                                        • Partager sur Facebook
                                        • Partager sur Twitter

                                        Creation d'un jeux de casse brique avec interface

                                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                        • Editeur
                                        • Markdown