Design pattern pour une factory [Résolu]

Messages postés
1305
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015
- - Dernière réponse : kankrelune
Messages postés
1305
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015
- 16 juin 2009 à 14:13
Bonjour...

Je suis en train de finir un code poo en javascript et je bloque sur un truc... je voudrais donc votre avis d'autant plus que javascript n'est pas mon langage de prédilection et que, même si j'ai des bonnes notions en poo, la poo en javascript est à mon sens un peu particulière... .. .

Bref l'objet en question, qui est lui même une collection d'objets, agit comme une faktory on récupère un objet via une méthode et on travaille à partir de cet objet, jusque là rien d'extraordinaire... là ou je "bloque" c'est que je voudrait renvoyer un objet "neuf" sauf pour une propriété que je voudrais commune à tous mes objets... un peu comme une config qui serait commune à tous les objets... pour l'instant je fonctionne par clonage, pas par choix mais parce que je l'ai codé comme ça donc je voudrais votre avis voir si y a plus propre comme façon de faire... .. .

Voili voilou... .. .

@ tchaOo°

l'homme est un loup pour l'homme... .. .
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
1305
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015
3
Merci
Bon et bien c'est fou comme le sujet semble intéresser du monde... .. .

Je pensais que ça changerais des helpHelloWorld habituels mais bon... faut croire que non... merci quand même... .. .

@ tchaOo°

l'homme est un loup pour l'homme... .. .

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 195 internautes nous ont dit merci ce mois-ci

Commenter la réponse de kankrelune
Messages postés
1305
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015
0
Merci
Et bhé... je vois que le sujet déchaine les foules... lol... .. . ;)

Allez un bout de code... ça peut aider pour donner un avi... voila ce que j'ai pour l'instant... ça tourne plutôt bien à voir si y a pas plus simple/propre comme façon de faire je suis preneur... .. .

varmaFactory = {
    commonVars : {},
   
    getNew: function() {
        varnewObj = newobjectModel();
        // j'étend mon objet avec certaines methode de ma factory
        [ 'maMethod', 'autreMethode'].forEach( function(copy) {
                newObj[copy] = maFactory [copy];
            }
        );
        // je met a jour ma propriété commune
        // je fais ça comme ça car je veux que les modifs de commonVars
        // via maFactory soient effective sur toutes mes instances mais pas l'inverse
        this.commonVars.forEach( function(copy) {
                newObj.commonVars[copy] = maFactory.commonVars[copy];
            }
        );
        returnnewObj;
    }
   
};

functionobjectModel() {
    // on controle si l'instance est appelée par la factory ou non
    if(arguments.callee.caller != maFactory.getNew ) {
       throw newError("objectModel can not be directly instancied");
    }
    this.commonVars = {};
}

Voila voila... les avis sont les bienvenues... .. .

@ tchaOo°

l'homme est un loup pour l'homme... .. .
Commenter la réponse de kankrelune
Messages postés
1305
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015
0
Merci
Toujours pas d'avis... .. ?

@ tchaOo°

l'homme est un loup pour l'homme... .. .
Commenter la réponse de kankrelune