fastapi

    Singleton Pattern과 Inversion of Control

    Singleton PatternInstance가 생성될때 오직 하나의 Instance가 생성되는 것을 보장하는 것을 목표로 하는 디자인 패턴. SingleTon Pattern의 여러 Client들이 접근하는 객체를 하나의 메모리 공간에서 관리할 수 있기 때문에 메모리 효율성이 좋고 객체의 상태관리를 하기에 용이하다.하지만 이러한 Singleton Pattern은 Application Level에서의 Global State로써 동작하기 때문에 복잡한 의존성 관리와 멀티쓰레드 상황에서 쓰레드 안정성이 주된 단점으로 뽑히게 된다.이러한 Singleton Pattern의 단점을 보완하기 위해 적용하는 것이 Inversion of Control 패턴이다.Inversion of Control객체의 의존성 관리 및 ..