싱글톤 패턴 Singleton Pattern
객체가 한 개만 생성될 수 있도록 관리하는 패턴입니다.
인스턴스 객체를 생성할 필요 없이 바로 객체에 접근할 수 있는 기능을 제공합니다.
싱글톤 패턴의 장단점
장점
- 객체를 하나만 생성해서 관리할 수 있습니다.
- 어디서든지 객체에 접근할 수 있도록 할 수 있습니다.
- 최초 호출 시에만 객체를 생성합니다.
단점
- 멀티 스레드 환경에서 객체를 여러번 생성하지 않도록 별도의 조치가 필요합니다.
- 프레임워크에서는 보통 상속에 의존해 객체를 생성하기 때문에 싱글톤 패턴을 적용하고 테스트하는 것이 어려울 수 있습니다.
- 싱글톤 패턴을 이용하면, 캡슐화가 깨진 나쁜 설계가 드러나지 않을 수도 있습니다.
* 캡슐화 : 객체지향 언어에서 객체의 속성과 행위를 외부에서 접근할 수 없도록 감추는 특징을 의미합니다.
싱글톤 패턴 구현
public class singleton {
private static singleton instance ;
public singleton() {
}
public static singleton getInstance() {
if (instance == null){
instance = new singleton();
}
return instance;
}
}
참조
*https://ko.wikipedia.org/wiki/%EC%BA%A1%EC%8A%90%ED%99%94
* https://refactoring.guru/design-patterns/singleton
* https://www.tutorialspoint.com/design_pattern/singleton_pattern.htm
'JAVA > DesignPattern' 카테고리의 다른 글
Design Pattern 디자인패턴 Adapter Pattern 어답터 패턴 (0) | 2021.12.16 |
---|---|
Design Pattern 디자인패턴 Prototype Pattern 프로토타입 패턴 (0) | 2021.12.15 |
Design Pattern 디자인 패턴 Builder Pattern 빌더 패턴 (0) | 2021.12.15 |
Design Pattern 디자인 패턴 Abstract Factory Pattern 추상 팩토리 패턴 (0) | 2021.12.13 |
Design Pattern 디자인 패턴 Factory Pattern 팩토리 패턴 (0) | 2021.12.07 |