지속 개발을 최적화하는 모델 모듈화

Python으로 배우는 이산 사건 시뮬레이션

Diogo Costa (PhD, MSc)

Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific

모델 확장성이란?

  • 시간이 지나며 기능 확장
  • 성능 저하·붕괴 없이

“확장 가능한” 모델

  • 일반적 의미: 수요에 맞춰 용량 증가
  • 이산 사건 모델: 확장하며 안정성 유지

중요성

  • 장기적 성공과 가치에 필수
  • 진화 가능성
  • 모델 모듈화 등 좋은 코딩 관행
Python으로 배우는 이산 사건 시뮬레이션

확장형 vs. 비확장형 모델

확장 가능한 모델

코드가 적절히 모듈화되어 구조 변경 없이 모듈을 쉽게 추가·제거·교체할 수 있어 더 확장 가능한 모델을 보여주는 다이어그램.

확장성이 낮은 모델

코드가 충분히 모듈화되지 않아 구조 변경 없이 모듈을 쉽게 추가·제거·교체하기 어려운, 확장성이 낮은 모델을 보여주는 다이어그램.

Python으로 배우는 이산 사건 시뮬레이션

모델 모듈화

  • 교체 가능한 구성요소(모듈)

  • 프로세스를 개별 함수로 분리

  • 같은 코드를 복사하지 않고

  • 모듈을 여러 번 호출

모델이 7개 함수로 구성되어 있으며, 업그레이드에서 "func_b"를 "func_b1"로 교체하고 "func_c"와 "func_d" 사이에 "func_f"를 추가한 예시를 보여주는 다이어그램.

Python으로 배우는 이산 사건 시뮬레이션

예시: 모듈 교체 및 추가

이전 버전

with counter.request() as request:
    yield request

    def func_a()
    def func_b()
    def func_c()
    def func_d()
    def func_e()

업데이트된 버전

with counter.request() as request:
  yield request

  def func_a()
  # def func_b() # Module replaced by
  def func_b1()  # Module replacement
  def func_c()
  def def func_f()   # New module added
  def func_d()
  def func_e()
Python으로 배우는 이산 사건 시뮬레이션

연습해 봅시다!

Python으로 배우는 이산 사건 시뮬레이션

Preparing Video For Download...