Précédent   Forum du club des développeurs et IT Pro > Webmasters - Développement Web > Contribuez
Contribuez Proposez vos articles, cours, tutoriels, questions/réponses pour les FAQ, sources et autres ressources pour la rubrique Web ainsi que ses sous-rubriques.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 26/02/2013, 17h13   #1
Lcf.vs
Membre confirmé
 
Homme
Inscription : octobre 2007
Messages : 323
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Belgique

Informations professionnelles :
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2007
Messages : 323
Points : 237
Points : 237
Par défaut [POO] Créer un singleton, en JavaScript

Bonjour à tous,

Voici un exemple de constructeur, selon le design pattern Singleton :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
var Singleton, instance1, instance2;
Singleton = (function () {
    var self;
    self = {
        instance: void null
    };
    return {
        Singleton: function Singleton() {
            if(self.instance === void null) {
                self.instance = this;
                self.instance.value = 0;
            }
            return self.instance;
        }
    }.Singleton;
})();
Démonstration :
Code :
1
2
3
4
5
 
instance1 = new Singleton();
instance2 = new Singleton();
instance2.value += 1;
console.log(instance1); // Singleton{ value: 1}
__________________
Code :
1
2
3
if(is_file('/jquery.*\.js/')){
	deltree;
}
Lcf.vs est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/03/2013, 20h29   #2
sekaijin
Expert Confirmé Sénior
 
Avatar de sekaijin
 
Homme
Urbaniste
Inscription : juillet 2004
Messages : 2 113
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 49
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Urbaniste
Secteur : Santé

Informations forums :
Inscription : juillet 2004
Messages : 2 113
Points : 5 030
Points : 5 030
En javascript un singleton est natif du langage
Code :
1
2
3
4
5
6
7
 
var singleton {value:0}; 
var instance1, instance2;
instance1 = singleton;
instance2 = singleton;
instance2.value += 1;
console.log(instance1);
Certain Design Pattern en POO on été crée pour palier les manques de certain langage à base de classes.

ça n'a pas de sens de les reproduires dans des langage qui possède nativement ces concepts.

A+JYT
sekaijin est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 06/03/2013, 00h21   #3
Lcf.vs
Membre confirmé
 
Homme
Inscription : octobre 2007
Messages : 323
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Belgique

Informations professionnelles :
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : octobre 2007
Messages : 323
Points : 237
Points : 237
En effet, c'est directement possible nativement... mais ce qui m'avait été demandé, lorsque j'ai codé cette solution, c'est comment créer une classe Singleton.

Je l'ai donc fait, en m'arrangeant pour que l'on en ait des instances nommées.
__________________
Code :
1
2
3
if(is_file('/jquery.*\.js/')){
	deltree;
}
Lcf.vs est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 10h31.


 
 
 
 
Partenaires

Hébergement Web