Python 4

[Python] Pythanic 하게 횡단 관심사 분리

Python 데코레이터로 서비스 레이어의 횡단 관심사 분리하기참고: 이 글의 코드 예시는 실제 업무에서 진행한 리팩토링을 기반으로 작성되었지만, 회사의 비즈니스 로직과 도메인 정보는 모두 제거하고 일반적인 예시(음식 주문 시스템)로 변경했음. 핵심은 횡단 관심사를 어떻게 분리했는가이지, 구체적인 비즈니스 로직이 아니기 때문. 패턴과 접근 방식은 동일하게 유지했음.현재 서비스 로직FastAPI 사용중/api/v2/order├── service_base.py # 모든 서비스가 상속받음├── main/│ ├── router.py│ ├── service.py│ └── dependencies.py└── platform/ ├── router.py ├── service.py ├──..

Python 2025.11.21

[Python] 모듈

학습 자료 : https://docs.python.org/ko/3.13/tutorial/modules.html모듈자바에서는 자주 사용하는 클래스나 함수들을 패키지로 묶어놓고 import 해서 사용한다. 파이선의 Module이 이와 같은 역할을 한다. 모듈이 왜 필요한가 ?인터프리터에서 직접 작성한 코드는 종료하면 사라져버린다. 그러나 모듈로 만들면 코드를 파일(*.py)로 저장할 수 있어서 재사용하거나 공유하기가 편리하다.모듈 불러오기: importimport fibo위 코드는 fibo 라는 모듈 객체를 만든다. 이 객체를 통해 모듈 안의 함수에 접근할 수 있다.fibo.fib(1000)fibo.fib2(100)__name__ 변수: 스크립트의 이름표모든 파이썬 모듈에는 __name__이라는 특별한 변..

Python 2025.09.25

[Python] 자료구조

학습 자료 : https://docs.python.org/ko/3.13/tutorial/datastructures.html자료구조리스트파이썬의 리스트는 객체지향적으로 설계되어 있어 다양한 내장 메서드를 제공한다. 아래 메서드들은 대부분 리스트를 제자리에서(in-place) 수정하고 None 을 반환한다. 요소 추가 및 확장list.append(x): 리스트 끝에 하나의 요소를 추가한다.list.extend(iterable): 리스트 끝에 다른 iterable(리스트, 튜플 등)의 모든 요소를 추가한다.요소 삽입 및 삭제list.insert(i, x): 특정 인덱스 i에 요소를 삽입한다.list.remove(x): 리스트에서 첫 번째로 발견된 x의 값을 삭제한다.list.pop([i]): 특정 인덱스의 i..

Python 2025.09.25

[Python] 조건문·반복문·함수

학습 자료 : https://docs.python.org/ko/3.13/tutorial/controlflow.html자료형파이썬은 타입 명시 없이 변수를 바로 선언할 수 있다.List : 여러개의 데이터를 순서대로 저장할 수 있음Tuple : List와 비슷하지만 한번 생성하면 내용을 변경할 수 없다Dictionary : 키와 값 쌍으로 데이터를 저장한다문법조건문if age > 20: print("성인")반복문words = ['cat', 'window', 'defenestrate']for w in words: print(w, len(w))파이썬의 for 문은 인덱스를 직접 다루지 않고, 요소 자체를 순회하는 방식이 기본임그래서 range() 를 사용하는데, range()는 반복문을 돌릴 때 특..

Python 2025.09.25