반응형
싱글턴 패턴은 애플리케이션 생애 동안 클래스 인스턴스화를 단일 인스턴스로 제한한다.
이 패턴은 애플리케이션에서 행위를 조직화하기 위해 하나의 인스턴스만 필요ㅛ로 하는 경우에 매우 유용하다.
애플리케이션이 블루투스로 원격 장치와 통신하면서 애플리케이션 곳곳에서 연결을 유지하고 싶을 경우가 싱글턴을 사용하는 좋은 예가 된다. 누군가는 연결 클래스의 인스턴스를 한 페이지에서 다음 페이지로 전달해 줄 수 있다.
싱글턴 패턴은 참조 타입에서만 구현할 수 있다.
싱글턴 패턴 구현하기
class MySingleton {
static let sharedInstance == MySingleton()
var number = 0
private init() {}
}
싱글턴 사용 예
var singleA = MySingleton.sharedInstance
var singleB = MySingleton.sharedInstance
var singleC = MySingleton.sharedInstance
singleB.number = 2
print(singleA.number)
print(singleB.number)
print(singleC.number)
singleC.number = 3
print(singleA.number)
print(singleB.number)
print(singleC.number)
싱글턴 패턴은 애플리케이션 라이프사이클 내내 클래스의 인스턴스가 오직 단 한 개만 존재해야 하는 구체적인 요구 사항이 있기 전까지는 사용하지 말아야 한다.
반응형
'프로그래밍 > Swift' 카테고리의 다른 글
UIViewController를 이용한 Bottom Popup만들기 (0) | 2021.08.25 |
---|---|
Swift 패턴 이야기- 빌더 패턴(builder) (0) | 2021.07.21 |
Swift 제네릭 함수, 제네릭 타입 (0) | 2021.07.15 |
Swift Protocol Extension 예제와 사용 절차 (0) | 2021.07.14 |
Swift 정규 표현식 규칙에 대한 이야기 (0) | 2021.07.14 |