파이썬 비동기 함수 Mocking, 더 이상 어렵지 않아요!오늘은 파이썬 (Python)에서 비동기 함수를 Mocking (모킹)하는 방법에 대해 쉽게 설명해 드리려고 해요.비동기 프로그래밍 코드를 짤 때 유닛 테스트 (unit test) 때문에 골치 아팠던 경험, 다들 한 번쯤 있으시죠?특히 외부 시스템에 의존하는 비동기 함수는 테스트하기가 정말 까다로운데요.이럴 때 Mocking (모킹)을 사용하면 복잡한 문제도 깔끔하게 해결할 수 있습니다.왜 비동기 함수를 Mocking (모킹)해야 할까요?Mocking (모킹)은 테스트를 할 때 꼭 필요한 기술인데요, 특히 비동기 함수 테스트에서는 더더욱 중요합니다.Mocking (모킹)을 하면 어떤 점이 좋을까요?격리 (Isolation): Mocking (모킹..
Python tile-tools 시작하기: Mapbox 타일 작업, 이제 어렵지 않아요! tile-tools 패키지는 Mapbox (맵박스) 타일을 다루고 탐색하는 데 유용한 파이썬 (Python) 라이브러리인데요.Mapbox (맵박스)의 JavaScript (자바스크립트) 유틸리티를 파이썬 (Python)으로 옮겨온 도구들을 모아놓은 패키지입니다.이 tile-tools를 사용하면 타일 기반 지도를 훨씬 더 효율적으로 작업할 수 있습니다.핵심 내용tile-tools는 타일 조작, 좌표 변환 같은 타일 기반 지도 작업을 간편하게 만들어줍니다.특정 줌 레벨에서 Mapbox (맵박스) 타일에 대한 GeoJSON (지오제이슨) 커버리지 생성을 지원합니다.설치 및 사용 방법이 간단하고, 렌더링 기능도 추가로 사용..
FastAPI 핵심 탐구: Starlette 깊이 파헤쳐보기 FastAPI (파스타피아이)는 사실상 Starlette (스타레테)를 감싼 API (응용 프로그래밍 인터페이스) 래퍼(wrapper)입니다.FastAPI (파스타피아이)를 제대로 이해하려면 먼저 Starlette (스타레테)부터 알아야 하는데요.ASGI (에이지에스아이) 프로토콜 Uvicorn (유비콘)은 공통 인터페이스인 ASGI (에이지에스아이) 프로토콜을 통해 ASGI (에이지에스아이) 애플리케이션과 상호 작용합니다.애플리케이션은 다음 코드를 구현하여 Uvicorn (유비콘)을 통해 정보를 주고받을 수 있습니다.async def app(scope, receive, send): # 가장 간단한 ASGI (에이지에스아이) 애플리케이션 ..
파이썬 비동기 프로그래밍, 코루틴의 모든 것안녕하세요!오늘은 파이썬 (Python)의 비동기 프로그래밍에 대해 한번 자세히 알아볼까 하는데요.그중에서도 핵심 개념인 코루틴 (coroutine) 에 대해 샅샅이 파헤쳐보는 시간을 갖겠습니다.파이썬 코루틴의 역사: 옛날 코루틴부터 최신 코루틴까지 파이썬 (Python)이 오랫동안 발전해오면서 코루틴 구현 방식도 여러 번 크게 바뀌었는데요.이 변화 과정을 쭉 훑어보면 파이썬 (Python) 비동기 프로그래밍의 본질을 더 깊이 이해하는 데 도움이 될 겁니다.초창기 탐색과 기본 기능 도입파이썬 2.5: 이 버전에서 제너레이터 (generator)에 .send(), .throw(), .close() 메서드가 추가됐는데요. 이 메서드들이 등장하면서 제너레이터 (gen..