<h2>Votre Formation vidéo</h2><br/>
Votre formation est décomposée<br/>
en chapitres très clairs de 20 à 30 min. <h2>Des exemples SWF </h2><br/>
Chaque leçon est accompagnée<br/>
du code source avec le fla et les classes. <h2>Votre Suivi personnalisé</h2><br/>
Vous pouvez  me poser toutes<br/>
vos questions sous les cours vidéos.

Comment créer un Singleton en AS3 ?

2 questions

Écrit le 24 mars par Matthieu
Publié dans le(s) sujet(s) ActionScript 3

Mots clés : , , , , , , ,

Le Kit du Développeur Flash

Dans ce tutoriel, nous allons implémenter le design pattern (ou modèle de conception) Singleton en ActionScript 3.

Et voici le résultat obtenu dans un swf :

https://www.actionscript-facile.com/wp-content/uploads/2011/03/singleton-ex.swf

Téléchargez le code source complet de l’exemple :

Télécharger “Implémentation Design Pattern Singleton” singleton-ex.zip – Téléchargé 91 fois – 25 KB

Et vous, comment implémentez-vous le pattern Singleton en AS3 ?

Il y a, bien évidemment, plusieurs solution pour créer une classe Singleton en ActionScript 3.

Postez votre code AS3 dans les commentaires, je suis curieux de voir votre code.

package
{
	import nl.demonsters.debugger.MonsterDebugger;
 
	/**
	 * Classe générique de configuration d'une application
	 *
	 */
	public class Config
	{
		private static var _oInstance : Config = null;// contient l'instance unique de la classe
		private static var allowInstance:Boolean = false; // empêche l'instanciation de la classe à partir du constructeur
 
		/* paramètres de notre classe de Configuration */
		public var texte:String;
 
		/**
		 * Returns singleton instance of <code>Config</code> class.
		 *
		 * @return The singleton instance of <code>Config</code> class.
		 */
		public static function getInstance() : Config
		{
			// si l'instance n'existe pas, on la crée
			if ( !(Config._oInstance is Config) )
			{
				allowInstance = true;// autorise la création d'une instance
				Config._oInstance = new Config();
				allowInstance = false;// désactive la création d'autre instance
			}
 
			// renvoie toujours la même instance de la classe
			return Config._oInstance;
		}
 
		/**
		 * Constructeur
		 */
		public function Config() : void
		{
			if (!allowInstance)// test s'il est possible d'instancier la classe
			{
				MonsterDebugger.trace(this, 'This class cannot be instantiated from the constructor' );
				// throw new Error ('This class cannot be instantiated from the constructor');
			}
			else // initialisation des paramètres de l'objet Config
				texte = "Bienvenue sur ActionScript-Facile";
		}
	}
}

 



Développez des Jeux et Applications Flash avec la Formation AS3 Facile !

Recevez Gratuitement Des Cours en Vidéos, des codes source et des livrets de formation.
Et en bonus gratuit : Le Framework AS3 Facile ! 


sit nunc Donec Donec eleifend odio ultricies quis, leo. ut fringilla