# 코드
public class Design
{
Design()
{
}
static Design _instance = null;
public static Design Instance
{
get
{
if (_instance == null)
{
_instance = new Design();
}
return _instance;
}
}
# 사용
Design d = Design.Instance;
이 코드는 싱글톤(Singleton) 디자인 패턴을 구현한 것입니다. 싱글톤은 어떤 클래스가 최초 한 번만 메모리를 할당하고 그 메모리에 인스턴스를 생성해 사용하는 패턴입니다. 이 패턴은 전역 변수를 사용하지 않고 객체를 하나만 생성하여 이를 어디에서든지 접근할 수 있도록 하는데 사용됩니다.
해당 코드를 간략히 설명하면:
1. `Design` 클래스는 싱글톤으로 구현되어 있습니다.
2. 정적으로 선언된 `_instance` 변수는 해당 클래스의 유일한 인스턴스를 저장합니다.
3. `Instance` 속성은 `_instance` 변수를 반환하며, 처음 호출될 때 `_instance`가 `null`이면 새로운 인스턴스를 생성합니다.
이렇게 함으로써 애플리케이션 내에서 `Design` 클래스의 인스턴스는 하나만 존재하게 되고, 어디서든지 이 인스턴스에 접근하여 정보를 공유할 수 있습니다. 이러한 패턴은 설정 값, 리소스 관리 등 여러 곳에서 하나의 인스턴스를 공유해야 할 때 유용하게 사용됩니다.
반응형
'Programming > C# - Window' 카테고리의 다른 글
C#/ 레지스트리 등록 사용 (0) | 2023.12.02 |
---|---|
C#/ .xml 설정파일 사용 (2) | 2023.12.02 |
C#/ 트레이 아이콘 사용 (0) | 2023.12.02 |
C#/ 프로그레스 바(progress bar) 사용 (0) | 2023.12.02 |
C#/ 프로그램 자동 업데이트 (Clickonce) (4) | 2023.12.01 |