💡 글 작성자는 vscode를 활용하여 Python을 작성하고있습니다.
소프트웨어 디자인 패턴에서 싱글턴 패턴을 따르는 클래스는, 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다.
이와 같은 디자인 유형을 싱글턴 패턴이라고 하며, 주로 공통된 객체를 여러개 생성해서 사용하는 DBCP(DataBase Connection Pool)와 같은 상황에서 많이 사용된다.
from singleton import SingleTon
def main():
# s = SingleTon
s = SingleTon.getInstance()
s.getTempX()
s.getTempY()
if __name__ == "__main__":
main()
class SingleTon:
# __instance 변수 None 설정
__instance = None
# getInstance = singleton classmethod
@classmethod
# cls = class
def getInstance(cls):
if cls.__instance == None:
# instance가 None이면
cls.__instance = SingleTon()
# class 지정
return cls.__instance
# 다시 들어왔을 때 None이 아닌 경우를 위해 return
def __init__(self):
self._temp_x = 4
self._temp_y = 10
# temp는 4라는 값 지정
def getTempX(self):
print(self._temp_x)
return self._temp_x
def getTempY(self):
print(self._temp_y)
return self._temp_y
[Python 스터디] class 에 대해 알아보자 (1) (0) | 2021.10.25 |
---|---|
[Python 스터디] def 함수에 대해 알아보자 (0) | 2021.10.25 |
[Python Opengl for glfw] Python을 활용하여 glfw로 삼각형 만들기 (0) | 2021.09.11 |
[Python OpenGL] Python을 활용하여 OpenGL로 주전자 만들기 2편 (0) | 2021.09.11 |
[Python OpenGL] Python을 활용하여 OpenGL로 주전자 만들기 1편 (0) | 2021.09.11 |