Giting.
낮의 Giting

메뉴판 › 안 만들어도 되는 것 사전 › 안 시킨 추상화 › 싱글톤 패턴을 구현한다

전

class DB:
    _instance = None
    def __new__(cls):
        if cls._instance is None:
            cls._instance = super().__new__(cls)
        return cls._instance

후

# db.py: 모듈이 이미 싱글톤
connection = connect()  # import 하면 하나만 존재
왜 이렇게 되나
  • __new__ 오버라이드나 메타클래스로 싱글톤을 구현한다
됐는지 보는 법

모듈 전역·lru_cache 로 됐고 __new__/메타클래스 싱글톤이 없으면 성공.

같은 묶음 · 안 시킨 추상화