IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Design Patterns Discussion :

Code source identique pour 2 programmes à but différents, quel bibliothèque choisir ?


Sujet :

Design Patterns

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 59
    Points : 59
    Points
    59
    Par défaut Code source identique pour 2 programmes à but différents, quel bibliothèque choisir ?
    Bonjour à tous.
    Voilà, je suis entrain de coder un éditeur de map pour mon jeu. Mon jeu comportera donc bien évidement une carte (format x/y). Le problème est que mon jeu et mon éditeur de map utilisent deux bibliothèques: CeGUI et SFML.

    Je ne sais pas quel bibliothèque utiliser vus que CeGUI semble plus adapté pour l'éditeur de map tandis que SFML est bien mieux adapté pour le jeu en lui même. Pourquoi donc ? Simplement car l'éditeur de map devra utiliser des boutons pour par exemple changer l'objet disponible sur la case tandis que le jeu en lui même ne nécessitera pas de clique sur cette case.
    Ainsi, je ne sais pas si je dois utiliser SFML pour coder l'affichage de ma map et donc créer un mini-gui en supplément à CeGUI que j'utilise déjà pour mon éditeur de map, où utiliser CeGUI pour l'affichage de ma map et utiliser des boutons inutiles pour le jeu.

    Dernière solution, faire les deux et réécrire deux fois le même code. Je ne suis pas vraiment partisan des cette solution.

    Merci d'avance pour vos réponses ;-)

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 217
    Points : 253
    Points
    253
    Par défaut
    Bonsoir,

    Je pense que vous allez devoir marier les deux "mondes" (i.e., les deux libs). C'est un peu aussi un des buts du paradigme objet : ré-utiliser, composer.

    C'est un très bon cas ( "d'école", au moins ) pour vous de réfléchir aux design patterns qui vous seront utiles pour abstraire la spécialisation de chaque librairie vis à vis de votre application, indépendamment de l'usage fait de l'autre librairie. J'espère que ma dernière phrase n'est pas trop tordue...

    Pour faire un peu plus concret, parmi les quelques pistes principales, que je crois pertinentes, qui me viennent à l'esprit (vous rechercherez plus de détails sur les définitions "officielles" ou les techniques d'implémentation, en C++ pour vous apparemment, dans les FAQ et les tutoriaux qui sont dans le coin, à côté de wikipedia et des résultats de ce cher google...) :

    * la façade

    * le proxy

    * le visiteur

    * les factories bien sûr (abstraites ou non)

    * autres (?)

    'HTH

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 59
    Points : 59
    Points
    59
    Par défaut
    Merci de votre réponse ;-) C'est bien la solution que je craignais. Je pense avoir saisi le très gros de l'idée: Créer une classe qui gère ma map, et créer 2 autres classes héritant de celle-ci. L'une pour l'éditeur et l'autre pour le jeu.

    Je vais voir plus en détail les design patterns que vous m'avez proposez avant de réfléchir à une solution. J'avoue être fainéant en ce qui concerne la mémorisation

  4. #4
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 59
    Points : 59
    Points
    59
    Par défaut
    En réalité, il n'y a pas besoin de design pattern. La factory pourrait être utile dans un cas similaire, mais dans le cas actuel, j'ai déjà une factory qui gère ce qu'il me faut à un plus haut niveau Un simple héritage est largement suffisant.

    Merci encore, ça m'a permis de revoir un peu mes design patterns !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 02/06/2009, 08h24
  2. Réponses: 2
    Dernier message: 26/05/2009, 09h58
  3. Réponses: 4
    Dernier message: 07/05/2009, 15h38
  4. Code source coloré pour SQL
    Par yamino dans le forum EDI
    Réponses: 2
    Dernier message: 06/06/2008, 14h37
  5. demande de code source C++ pour communication SIP
    Par fabio003 dans le forum C++
    Réponses: 0
    Dernier message: 27/08/2007, 17h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo