코딩
객체화 잡기술
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를 사용한다면, 데이터 용량을 지킬수 있을것이다.