YagomCareerStarterCamp-6 / Interview-study-in-swift

1 stars 0 forks source link

[7주차] Q3_Sigleton 패턴을 활용하는 경우를 예를 들어 설명하시오. #21

Open Judy-999 opened 1 year ago

Judy-999 commented 1 year ago

꼬리질문

Judy-999 commented 1 year ago

싱글톤 패턴은 하나의 유일한 인스턴스만 가져 공용으로 사용하는 디자인입니다. 싱글톤 패턴은 인스턴스를 호출하는 횟수에 상관없이 같은 인스턴스만 반환하고, 전역에서 사용할 수 있다는 특징이 있습니다. 코코아터치 프레임워크에서 싱글톤 패턴을 적용한 예시는 다음과 같습니다.

class Singleton {
    static let shared = Singleton()

    private init(){}
}

static let으로 타입 프로퍼티로 자신의 인스턴스를 가지도록 하고, 이니셜라이저를 private로 해서 외부에서 호출되지 않게 하여 싱글톤 패턴을 적용한 클래스를 만들 수 있습니다.

하나의 인스턴스로 메모리를 공유하여 메모리 절약이 되고 데이터 공유가 쉽다는 장점이 있지만, 싱글톤 클래스가 너무 많은 일을 하면 결합도가 높아져 수정과 테스트가 어려워질 수 있다는 문제도 있습니다.

kiwi1023 commented 1 year ago

Singleton 디자인 패턴을 활용하는 경우를 예를 들어 설명해주시오.

kiwi1023 commented 1 year ago

싱글턴 디자인 패턴의 장단점을 설명해주세요

Groot-94 commented 1 year ago