Design 2

C

[Design Pattern] Factory - 팩토리 디자인 패턴

Factory Design Pattern 가장 기초적인 디자인 패턴. 객체를 찍어내는 공장. 이 공장은 함수로도, 클래스 객체로도 만들어 낼 수 있다. # 팩토리 패턴 예시 Animal객체를 상속받는 Cat, Dog 클래스 class Animal(): def speak(self): pass class Cat(Animal): def speak(self): print("Meow!") class Dog(Animal): def speak(self): print("Baww!") 팩토리 함수 # argument로 들어오는 요청에 따라 적절한 Animal객체를 만들어 반환. def FactoryFun(animal: str) -> Animal: # argument로 string을 받고 있지만, 실제 코드에선 enum이..

Dev/Design Patterns 2021.11.20

C

[Design pattern] Singleton - 싱글톤 디자인 패턴

Singleton Pattern 프로세스 실행 중에 오직 하나의 객체만 생성되도록 강제하는 디자인 패턴. 싱글톤이 적용된 클래스의 객체를 여러개 생성해도 모두 하나의 객체만을 가리키게 된다. 결국, 해당 객체는 단 하나만 만들어지게 되는 것. # 싱글톤 클래스 정의 싱글톤 클래스는 static 변수(instance)가 존재한다. 싱글톤 클래스에서 내부 static 변수가 정의되어 있지 않다면, static 변수에 현재 객체(this)를 할당해주고, 이 변수를 return해준다. class Singleton{ static instance; if(!Singleton.instance){ Singleton.instance = this; } return Singleton.instance; } 이제 클라이언트 코드..

Dev/Design Patterns 2021.11.18