In software engineering, the singleton pattern is a design pattern that is used to restrict instantiation of a class to one object. This is useful when exactly one object is needed to coordinate actions across the system. The concept is sometimes generalized to systems that operate more efficiently when only one object exists, or that restrict the instantiation to a certain number of objects (say, five).

PropertyValue
dbpprop:abstract
  • In software engineering, the singleton pattern is a design pattern that is used to restrict instantiation of a class to one object. This is useful when exactly one object is needed to coordinate actions across the system. The concept is sometimes generalized to systems that operate more efficiently when only one object exists, or that restrict the instantiation to a certain number of objects (say, five). Some considerWho|date=September 2009 it an anti-pattern, judging that it is overused, introduces unnecessary limitations in situations where a sole instance of a class is not actually required, and introduces global state into an application. Alex Miller. Patterns I hate #1: Singleton, July 2007Scott Densmore. Why singletons are evil, May 2004Steve Yegge. Singletons considered stupid, September 2004J.B. Rainsberger, IBM. Use your singletons wisely, July 2001Chris Reath. Singleton I love you, but you're bringing me down, October 2008
  • Das Singleton (auch Einzelstück genannt) ist ein in der Softwareentwicklung eingesetztes Entwurfsmuster und gehört zur Kategorie der Erzeugungsmuster (engl. Creational Patterns). Es verhindert, dass von einer Klasse mehr als ein Objekt erzeugt werden kann. Dieses Einzelstück ist darüber hinaus üblicherweise global verfügbar. Das Muster ist eines der von der so genannten Viererbande (GoF) publizierten Muster.
  • En enginyeria de programari, el patró singleton és un patró de disseny que es fa servir per a restringir la instanciació d'una classe a un objecte. Això és útil quan es necessita exactament un objecte per a coordinar accions a tot sistema. De vegades és generalitzat a sistemes que operen més eficientment quan només un o pocs objectes existeixen. També és considerat un anti-patró ja que sovint és utilitzat com a eufemisme de variable global.
  • Singleton je název pro techniku, které se využívá v programování. Singleton, česky jedináček nebo unikát, představuje řešení problému, kdy v celém programu má běžet pouze jediná instance nějaké třídy (pouze 1 objekt dané třídy). Toho se využívá například pro sdílení informací a vlastností mezi objekty.
  • El patrón de diseño singleton (instancia única) está diseñado para restringir la creación de objetos pertenecientes a una clase o el valor de un tipo a un único objeto. Su intención consiste en garantizar que una clase sólo tenga una instancia y proporcionar un punto de acceso global a ella. El patrón singleton se implementa creando en nuestra clase un método que crea una instancia del objeto sólo si todavía no existe alguna. Para asegurar que la clase no puede ser instanciada nuevamente se regula el alcance del constructor (con atributos como protegido o privado). La instrumentación del patrón puede ser delicada en programas con múltiples hilos de ejecución. Si dos hilos de ejecución intentan crear la instancia al mismo tiempo y esta no existe todavía, sólo uno de ellos debe lograr crear el objeto. La solución clásica para este problema es utilizar exclusión mutua en el método de creación de la clase que implementa el patrón. Las situaciones más habituales de aplicación de este patrón son aquellas en las que dicha clase controla el acceso a un recurso físico único (como puede ser el ratón o un archivo abierto en modo exclusivo) o cuando cierto tipo de datos debe estar disponible para todos los demás objetos de la aplicación. El patrón singleton provee una única instancia global gracias a que: La propia clase es responsable de crear la única instancia. Permite el acceso global a dicha instancia mediante un método de clase. Declara el constructor de clase como privado para que no sea instanciable directamente.
  • En génie logiciel, le singleton est un patron de conception (design pattern) dont lobjet est de restreindre linstanciation dune classe à un seul objet (ou bien à quelques objets seulement). Il est utilisé lorsque lon a besoin dexactement un objet pour coordonner des opérations dans un système. Le modèle est parfois utilisé pour son efficacité, lorsque le système est plus rapide ou occupe moins de mémoire avec peu dobjets quavec beaucoup dobjets similaires. On implémente le singleton en écrivant une classe contenant une méthode qui crée une instance uniquement sil nen existe pas encore. Sinon elle renvoie une référence vers lobjet qui existe déjà. Dans beaucoup de langages de type objet, il faudra veiller à ce que le constructeur de la classe soit privé ou bien protégé, afin de sassurer que la classe ne puisse être instanciée autrement que par la méthode de création contrôlée. Le singleton doit être implémenté avec précaution dans les applications multi-thread. Si deux threads exécutent en même temps la méthode de création alors que lobjet unique nexiste pas encore, il faut absolument sassurer quun seul créera lobjet, et que lautre obtiendra une référence vers ce nouvel objet. La solution classique à ce problème consiste à utiliser lexclusion mutuelle pour indiquer que lobjet est en cours dinstanciation.
  • Nella programmazione ad oggetti, il Singleton è uno dei pattern fondamentali descritti dalla "banda dei quattro" nel celebre libro Design Patterns.
  • Singleton パターン(シングルトン・パターン)とは、GoF(Gang of Four; 4人のギャングたち)によって定義されたデザインパターンの1つである。Singleton パターンを用いると、そのクラスのインスタンスが1つしか生成されないことを保証することができる。
  • Singleton is een ontwerppatroon om het aantal objecten van een bepaalde klasse tot één te beperken. Met dit ontwerppatroon is het mogelijk om de toegang tot bepaalde systeembronnen altijd via één object te laten gaan. Een toepassing van de singleton is bijvoorbeeld het maken van unieke identificatienummers binnen een programma. Om er altijd zeker van te zijn dat elk identificatienummer uniek is, is het handig om dit door één enkel object te laten genereren. Dit is dan een singleton. Een singleton wordt gemaakt door een klasse te definiëren met een methode die een nieuw object aanmaakt als het nog niet bestaat en een bestaand object teruggeeft als er al wel een dergelijk object bestaat.
  • Singleton jest to jeden z kreacyjnych wzorców projektowych (obiektowy), którego celem jest ograniczenie możliwości tworzenia obiektów danej klasy do jednej instancji oraz zapewnienie globalnego dostępu do stworzonego obiektu. Niekiedy wzorzec uogólnia się do przypadku wprowadzenia pewnej maksymalnej liczby obiektów, jakie mogą istnieć w systemie. Niektórzy programiści uznają go za antywzorzec, ponieważ łamie zasady projektowania obiektowego, często bywa nadużywany lub sprowadza się do stworzenia obiektowego zamiennika dla zmiennej globalnej .
  • Singleton, é um padrão de projeto de software (do inglês Design Pattern). Este padrão garante a existência de apenas uma instância de uma classe, mantendo um ponto global de acesso ao seu objeto. Nota linguística: O termo vem do significado em inglês quando se resta apenas uma carta nas mãos, num jogo de baralho. Muitos projetos necessitam que algumas classes tenham apenas uma instância. Por exemplo, em uma aplicação que precisa de uma infraestrutura de log de dados, pode-se implementar uma classe no padrão singleton. Desta forma existe apenas um objeto responsável pelo log em toda a aplicação que é acessível unicamente através da classe singleton.
  • Одиночка, (lang-en|Singleton) — порождающий шаблон проектирования.
  • Inom datavetenskap är begreppet Singleton ett designmönster som innebär att man begränsar antalet instanser av en klass till ett objekt.
  • Yazılım mühendisliğinde, tekillik kalıbı bir sınıf tipinden sadece tek bir nesnenin yaratılmasına kısıtlayan bir yazılım tasarım kalıbıdır. (Bu kavram bazen daha da geliştirilerek sınıfın belirli bir sayıda nesnelerinin yaratılması şeklinde genelleştirilebilir - örneğin, oluşturulacak nesne sayısı beş ile sınırlanabilir. ) Bu tüm sistemde davranışları koordine etemek için sadece tek bir nesne gerektiği durumlarda faydalıdır. Bazen sadece bir veya birkaç nesne bulunduğu durumda daha verimli çalışacak sistemler için de genelleştirilmektedir. Bazı kişiler bu tasarım kalıbını anti-kalıp olarak değerlendirmekte, çok fazla kullanıldığını ve bazı durumlarda nesnenin tek sefer oluşturulmasının gereksiz bir kısıtlama olduğunu düşünmektedirler.
  • Одинак ({{lang-en|Singleton) — шаблон проектування, відноситься до класу твірних шаблонів.
  • 单例模式(Singleton),也叫单子模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取,然后服务进程中的其他对象再通过这个单例对象获取这些配置信息。这种方式简化了在复杂环境下的配置管理。 实现单例模式的思路是:一个类能返回对象一个引用(永远是同一个)和一个获得该实例的方法(必须是静态方法,通常使用getInstance这个名称);当我们调用这个方法时,如果类持有的引用不为空就返回这个引用,如果类保持的引用为空就创建该类的实例并将实例的引用赋予该类保持的引用;同时我们还将该类的构造函数定义为私有方法,这样其他处的代码就无法通过调用该类的构造函数来实例化该类的对象,只有通过该类提供的静态方法来得到该类的唯一实例。 单例模式在多线程的应用场合下必须小心使用。如果当唯一实例尚未创建时,有两个线程同时调用创建方法,那么它们同时没有检测到唯一实例的存在,从而同时各自创建了一个实例,这样就有两个实例被构造出来,从而违反了单例模式中实例唯一的原则。 解决这个问题的办法是为指示类是否已经实例化的变量提供一个互斥锁(虽然这样会降低效率)。
dbpprop:hasPhotoCollection
dbpprop:javadocSeProperty
  • System
  • Toolkit
  • getDefaultToolkit()
  • getProperties()
  • java/awt
  • java/lang
dbpprop:package
  • java.awt
dbpprop:reference
dbpprop:wikiPageUsesTemplate
dbpprop:wikibooksProperty
  • Computer Science/Design Patterns
  • Singleton
  • Singleton implementations in various languages
rdf:type
rdfs:comment
  • In software engineering, the singleton pattern is a design pattern that is used to restrict instantiation of a class to one object. This is useful when exactly one object is needed to coordinate actions across the system. The concept is sometimes generalized to systems that operate more efficiently when only one object exists, or that restrict the instantiation to a certain number of objects (say, five).
  • Das Singleton (auch Einzelstück genannt) ist ein in der Softwareentwicklung eingesetztes Entwurfsmuster und gehört zur Kategorie der Erzeugungsmuster (engl. Creational Patterns). Es verhindert, dass von einer Klasse mehr als ein Objekt erzeugt werden kann. Dieses Einzelstück ist darüber hinaus üblicherweise global verfügbar. Das Muster ist eines der von der so genannten Viererbande (GoF) publizierten Muster.
  • En enginyeria de programari, el patró singleton és un patró de disseny que es fa servir per a restringir la instanciació d'una classe a un objecte. Això és útil quan es necessita exactament un objecte per a coordinar accions a tot sistema. De vegades és generalitzat a sistemes que operen més eficientment quan només un o pocs objectes existeixen. També és considerat un anti-patró ja que sovint és utilitzat com a eufemisme de variable global.
  • Singleton je název pro techniku, které se využívá v programování. Singleton, česky jedináček nebo unikát, představuje řešení problému, kdy v celém programu má běžet pouze jediná instance nějaké třídy (pouze 1 objekt dané třídy). Toho se využívá například pro sdílení informací a vlastností mezi objekty.
  • El patrón de diseño singleton (instancia única) está diseñado para restringir la creación de objetos pertenecientes a una clase o el valor de un tipo a un único objeto. Su intención consiste en garantizar que una clase sólo tenga una instancia y proporcionar un punto de acceso global a ella. El patrón singleton se implementa creando en nuestra clase un método que crea una instancia del objeto sólo si todavía no existe alguna.
  • En génie logiciel, le singleton est un patron de conception (design pattern) dont lobjet est de restreindre linstanciation dune classe à un seul objet (ou bien à quelques objets seulement). Il est utilisé lorsque lon a besoin dexactement un objet pour coordonner des opérations dans un système. Le modèle est parfois utilisé pour son efficacité, lorsque le système est plus rapide ou occupe moins de mémoire avec peu dobjets quavec beaucoup dobjets similaires.
  • Nella programmazione ad oggetti, il Singleton è uno dei pattern fondamentali descritti dalla "banda dei quattro" nel celebre libro Design Patterns.
  • Singleton パターン(シングルトン・パターン)とは、GoF(Gang of Four; 4人のギャングたち)によって定義されたデザインパターンの1つである。Singleton パターンを用いると、そのクラスのインスタンスが1つしか生成されないことを保証することができる。
  • Singleton is een ontwerppatroon om het aantal objecten van een bepaalde klasse tot één te beperken. Met dit ontwerppatroon is het mogelijk om de toegang tot bepaalde systeembronnen altijd via één object te laten gaan. Een toepassing van de singleton is bijvoorbeeld het maken van unieke identificatienummers binnen een programma. Om er altijd zeker van te zijn dat elk identificatienummer uniek is, is het handig om dit door één enkel object te laten genereren. Dit is dan een singleton.
  • Singleton jest to jeden z kreacyjnych wzorców projektowych (obiektowy), którego celem jest ograniczenie możliwości tworzenia obiektów danej klasy do jednej instancji oraz zapewnienie globalnego dostępu do stworzonego obiektu. Niekiedy wzorzec uogólnia się do przypadku wprowadzenia pewnej maksymalnej liczby obiektów, jakie mogą istnieć w systemie.
  • Singleton, é um padrão de projeto de software (do inglês Design Pattern). Este padrão garante a existência de apenas uma instância de uma classe, mantendo um ponto global de acesso ao seu objeto. Nota linguística: O termo vem do significado em inglês quando se resta apenas uma carta nas mãos, num jogo de baralho. Muitos projetos necessitam que algumas classes tenham apenas uma instância.
  • Одиночка, (lang-en|Singleton) — порождающий шаблон проектирования.
  • Inom datavetenskap är begreppet Singleton ett designmönster som innebär att man begränsar antalet instanser av en klass till ett objekt.
  • Yazılım mühendisliğinde, tekillik kalıbı bir sınıf tipinden sadece tek bir nesnenin yaratılmasına kısıtlayan bir yazılım tasarım kalıbıdır. (Bu kavram bazen daha da geliştirilerek sınıfın belirli bir sayıda nesnelerinin yaratılması şeklinde genelleştirilebilir - örneğin, oluşturulacak nesne sayısı beş ile sınırlanabilir. ) Bu tüm sistemde davranışları koordine etemek için sadece tek bir nesne gerektiği durumlarda faydalıdır.
  • Одинак ({{lang-en|Singleton) — шаблон проектування, відноситься до класу твірних шаблонів.
rdfs:label
  • Singleton pattern
  • Singleton (Entwurfsmuster)
  • Patró singleton
  • Singleton
  • Singleton
  • Singleton (patron de conception)
  • Singleton
  • Singleton パターン
  • Singleton (informatica)
  • Singleton (wzorzec projektowy)
  • Singleton
  • Одиночка (шаблон проектирования)
  • Singleton
  • Tekillik Kalıbı
  • Одинак (шаблон проектування)
  • 单例模式
owl:sameAs
skos:subject
foaf:page
is dbpprop:redirect of
is owl:sameAs of