싱글톤 패턴이란?
하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴. 원래는 하나의 클래스에 여러 개의 인스턴스를 생성할 수 있지만 싱글톤 패턴에서는 단 하나만을 생성하여 이 인스턴스를 공유하여 사용하는 패턴.
장점
하나의 인스턴스만을 사용하기 때문에 인스턴스를 생성하는 비용을 줄일 수 있다는 장점이 있다.
단점
의존성이 높아진다.
예를 들어 단위 테스트를 진행할 때 테스트가 서로 독립적이어야 하는데 하나의 인스턴스를 여러 테스트들이 공유할 경우 문제가 발생할 수 있다.
Swift 예시 코드
스위프트에서는 싱글톤 패턴을 비교적 간단하게 구현할 수 있다.
class User {
static let shared = User()
var name: String?
var age: Int?
private init() { }
}
'CS Study' 카테고리의 다른 글
선언형 프로그래밍 (0) | 2023.12.12 |
---|---|
Optimistic Update vs. Pessimistic Update (1) | 2023.11.23 |
UI/UX 란 무엇인가 (1) | 2023.11.22 |