jm_p_op

객체화 잡기술 본문

코딩

객체화 잡기술

jm_p_op 2024. 3. 17. 08:59

 

class ABC:
    def __init__(self,types_name) -> None:
        t={"a": A,
                "b": B,
                "c": C}
        self.t={}
        for type_name in types_name:
            self.t[type_name]=t[type_name]()  
class A:
    def __init__(self) -> None:
        print("a")
    def plus(a,b):
        return a+b
class B:
    def __init__(self) -> None:
        print("b")
    def minus(a,b):
        return a-b
class C:
    def __init__(self) -> None:
        print("c")
    def plus(a,b):
        return a+b
    def minus(a,b):
        return a-b
c=ABC("a")
a=C()

A+B 가 C라고 하자

C인스턴스를 수만개 만들고 일부는 plus만 , 일부는 minus만 일부는 둘다 사용한다고 하자

C로 쓴다면 모든 인스턴스에 불필요한 데이터가 저장이 되겠지만, ABC처럼 dictionary를 사용한다면, 데이터 용량을 지킬수 있을것이다.