| Summary: Patterns:Singleton |
| Author: Unkown (번역 : Rhio.Kim) |
| Published: Unkown |
| Ext Version: 1.1 |
Languages: English French Korean
|
Contents |
Singleton은 오브젝트의 유일한 인스턴스가 어플리케이션 내에서 생성될 수 있도록 하는 프로그래밍 디자인 패턴이다. Singleton은 글로별 변수처럼 한번만 정의되고 어플리케이션 내에서 어디서든지 이용할 수 있다.
Singleton 패턴은 Ext 예제 코드에서 계속 사용되어 집니다. 그러나 이 패턴을 선택한 이유는 예제만으로는 항상 명확해지지 않습니다. 한번만 호출되는 “init” 메소드로 전형적인 Ext예제는 Singleton을 이루고 있다. 그런 예제에서 Singleton은 실제로는 필요하지 않다. 그러나 예를 들어 여러분이 “reload” 메소드를 추가한다면 그것이 여러분의 어플리케이션 내에서 여러 곳으로부터 다시 어떻게 호출 될 수 있었느냐에 관해 볼지도 모른다 Singleton 을 사용하는 것에 의해, 어플리케이션 내 어디서든지 특정 윈도우 제어와 그것의 파라미터를 변경하고 접근할 수 있도록 단 하나의 유일한 인스턴스를 보장한다.
Singleton = function(){ var _instance = null; return { getInstance : function(){ if(_instance === null){ _instance = {}; //여기에 인스턴스를 정의 } return _instance; } }; }(); Ext.onReady(function(){ var x = Singleton.getInstance(); var y = Singleton.getInstance(); if(x == y){ alert("Objects are the same instance"); } });
myObservableSingleton = function(){ var privateProperty = "Only accessible internally"; function privateMethod() { alert("Only callable internally"); } return Ext.apply(new Ext.util.Observable, { publicProperty: "You can access this", publicMethod: function() { alert("You can call this"); } }) }();
위키 피디아 참고자료 : Wikipedia Singleton Pattern