#파이썬
157 편의 글

typing 고급 — Variance, ParamSpec, Self, overload
중급 typing의 다음 단계 — covariance/contravariance, ParamSpec과 Concatenate, Self, TypeGuard/TypeIs, @overload까지 정리합니다.

typing 본격 — Generic, Protocol, TypedDict, Literal
기초의 타입 힌트 다음 단계 — 타입을 매개변수화하는 Generic, 덕 타이핑을 정확히 적는 Protocol, dict 모양 명시 TypedDict, 좁은 union Literal까지 정리합니다.

uv로 라이브러리 배포 — pyproject.toml과 PyPI 출시
pyproject.toml의 의미를 한 번에 정리하고 uv build · uv publish로 첫 라이브러리를 PyPI에 출시하는 과정을 다룹니다.

디스크립터와 __set_name__
property가 동작하는 원리 — __get__/__set__ 프로토콜과 데이터/논데이터 디스크립터, __set_name__으로 깔끔한 검증 필드 만들기까지 정리합니다.

라우팅, Pydantic 모델, 의존성 주입
APIRouter로 라우트 분리, Pydantic v2 스키마로 입력/출력 정의, Depends로 공통 로직을 분리하는 패턴까지 정리합니다.

매직 메소드 깊이와 프로토콜
파이썬 객체가 언어 기능과 통합되는 모든 후크. __call__, __getitem__, __hash__, __format__, __getattr__ 등을 한곳에 정리합니다.

메타클래스 — 언제 정말 필요한가
클래스를 만드는 클래스를 다룹니다. type의 정체, __init_subclass__와의 분담, 클래스 데코레이터로 풀 수 있는 경우, 그리고 진짜 메타클래스가 필요한 좁은 영역까지 정리합니다.

모듈, 패키지와 pyproject.toml
import 시스템, 모듈과 패키지의 차이, __init__.py와 __main__, 그리고 pyproject.toml로 의존성·도구 설정·배포까지 한곳에 정리합니다.

변수, 기본 타입과 타입 힌트
파이썬은 동적 언어지만 모던 파이썬은 처음부터 타입을 적습니다. int/str/bool/None과 빌트인 제네릭, int | None 단축 문법, mypy/pyright까지 정리합니다.

부록 A — 옛 파이썬 코드를 modern 스타일로 옮기기
2017년 스타일 파이썬 코드(% 문자열, has_key, type() 비교 등)를 현대 파이썬 스타일로 한 단계씩 옮기는 가이드. 옛 파이썬 기초 강좌 21편의 독자가 본 책으로 자연스럽게 이어 읽을 수 있게.

비동기 깊이 — 이벤트 루프, gather/wait, async generator
중급 입문의 다음 단계 — 이벤트 루프의 실제 동작, Future와 Task의 차이, gather vs wait, async generator와 async iteration까지 정리합니다.