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 :

Héritage et Singleton [Singleton]


Sujet :

Design Patterns

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2005
    Messages : 48
    Points : 39
    Points
    39
    Par défaut Héritage et Singleton
    Bonjour,

    Dans des soucis de performances ma chef m'a demandé de créer des singletons, ok pas de problème. Voila mon appli :

    Je définis des types de données:
    J'ai une classe abstraite Type() et deux classes héritent de celle ci : "Numerique" et "Chaine".

    J'ai ensuite des classes qui héritent de Numerique comme par ex montant, pourcentage,etc etc et la même chose pour "chaine" j'ai des classes qui héritent de celle ci comme par ex email.

    J'aimerais maintenant utiliser le pattern singleton pour n'avoir qu'un instance de chaque, je sais comment créer un singleton mais là avec tous ses héritages je ne sais plus trop quelle implémentation choisir...

    Quelqu'un peut il m'aiguiller ?
    Merci
    Arno

  2. #2
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2005
    Messages : 48
    Points : 39
    Points
    39
    Par défaut
    Peut être existe t'il des méthodes plus appropriés pour faire des économies de mémoire que le pattern singleton ...?

  3. #3
    Membre habitué
    Inscrit en
    Août 2004
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 113
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    le poids-plume (ou poids-mouche)
    http://en.wikipedia.org/wiki/Flyweight_pattern


    Alex

  4. #4
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 533
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 533
    Points : 6 709
    Points
    6 709
    Par défaut
    bonjour,

    En lui meme le pattern singleton ne permet strictement aucune économie de mémoire, je dirai même que c'est l'inverse, mais dans des proportions très faible. Tu es sure d'avoir bien compris la chef ?

    Pour tout dire je n'ai me pas du tout ce pattern, car je suis fainéant, et donc je n'aime pas écrire Aze::instance()->trucmachinebidule() alors qu'avec une opération de classe il suffit d'écrire Aze::trucmachinebidule(). De plus je suis radin coté cpu, et donc savoir que l'on se demande continuellement si l'instance existe alors que la réponse sera négative une seule fois pour toutes me donne des boutons

    Plus sérieusement et pour revenir à ton problème initial singleton+héritage, il ne faut pas mémoriser les instances dans instance(), mais dans les contructeurs, ainsi il n'y aura pas de problème.
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  5. #5
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2005
    Messages : 48
    Points : 39
    Points
    39
    Par défaut
    merci pour votre aide,

    J'ai réussit à créer mes singletons avec héritage

    En lui meme le pattern singleton ne permet strictement aucune économie de mémoire, je dirai même que c'est l'inverse, mais dans des proportions très faible. Tu es sure d'avoir bien compris la chef ?
    Effectivement, ma chef m'a demandé de créer plutot des singletons pour ne pas créer plusieurs fois la meme instance d'une classe en mémoire, juste une, et par conséquent faire une économie de mémoire... elle ferait donc fausse route moi je suis que le petit stagiaire, je n'ai pas assez d'expérience pour avoir un avis la dessus. Je vias regarder du coté du pattern "poid mouche" merci alex00, car nous devons vraiment nous poser une contrainte de performance sur toutes nos dev!

    Merci encore
    Arnaud

  6. #6
    Modérateur
    Avatar de bruno_pages
    Homme Profil pro
    ingénieur informaticien à la retraite
    Inscrit en
    Juin 2005
    Messages
    3 533
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur informaticien à la retraite
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2005
    Messages : 3 533
    Points : 6 709
    Points
    6 709
    Par défaut
    ta prof ne fait pas fausse route en te disant que creer une seule instance au lieu de plusieurs fait gagner de la memoire. Moi je parlais juste du pattern lui même
    Bruno Pagès, auteur de Bouml (freeware), mes tutoriels sur DVP (vieux, non à jour )

    N'oubliez pas de consulter les FAQ UML et les cours et tutoriels UML

  7. #7
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    48
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Février 2005
    Messages : 48
    Points : 39
    Points
    39
    Par défaut
    Ah d'accord désolé je n'avais pas compris

    Merci

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 14
    Points : 4
    Points
    4
    Par défaut
    J'aimerais savoir comment tu t'es prit pour gérer ton singleton avec héritage parce que j'ai le même problème que toi.

    J'ai besoin d'accéder aux propriétés de ma classe de base sauf que j'ai l'erreur :"Cannot refer to an instance member of a class from within a shared method or shared member initializer without an explicit instance of the class."

    En plus, je ne peux pas modifier ma classe de base.

    Que puis-je faire?

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

Discussions similaires

  1. Singleton et héritage..
    Par jeremm dans le forum C#
    Réponses: 6
    Dernier message: 25/04/2010, 23h11
  2. Problème d'héritage + singleton
    Par jeremm dans le forum C#
    Réponses: 11
    Dernier message: 20/04/2010, 15h34
  3. Template, Singleton et Héritage
    Par al2000 dans le forum C#
    Réponses: 3
    Dernier message: 19/04/2009, 20h21
  4. [Singleton] [Java] Singleton et héritage
    Par Didier 69 dans le forum Design Patterns
    Réponses: 4
    Dernier message: 13/01/2007, 12h18
  5. Réponses: 14
    Dernier message: 02/02/2006, 18h32

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