출고 예상일 : 2026-04-30 (출고 후 1~2일 이내 수령)
내부 사정으로 출시가 지연될 수 있습니다.
구매한 도서 중 예약도서가 포함되어 있을 경우, 예약도서 출고일에 함께 배송됩니다.
'파이썬다운' 유연성과 '아키텍처의 엄격함'의 절묘한 균형을 실전 코드로 증명하기
파이썬은 다재다능한 언어로, 클린 아키텍처 원칙을 적용하기에 매우 적합합니다. 동적 타이핑의 특성과 풍부한 생태계 덕분에 빠르게 개발할 수 있지만, 이러한 장점은 애플리케이션이 성장할수록 복잡하고 유지·보수하기 어려운 코드베이스를 만드는 원인이 되기도 합니다. 클린 아키텍처는 파이썬의 유연함을 살리면서도 체계적이고 유지·보수하기 쉬운 설계를 구현할 수 있도록 돕는 프레임워크입니다.
이 책은 파이썬 프로젝트에 클린 아키텍처 패턴을 적용하는 방법을 구체적으로 살펴봅니다. 단순히 ‘작동하는 시스템’을 만드는 데서 그치지 않고, 테스트하기 쉽고 유지·보수하기 쉬우며 변화에 유연하게 대응할 수 있는 시스템을 구축하는 방법을 알아봅니다. 태스크 관리 애플리케이션을 예제로 삼아 처음부터 완전한 시스템을 단계적으로 구현하면서, 적절한 아키텍처 경계를 설정하면 소프트웨어가 시간이 지나도 자연스럽게 진화할 수 있음을 보여줍니다.
새로운 시스템을 구축하든 기존 시스템을 유지·보수하든, 이 책에서 다루는 원칙과 실천 방법은 더욱 견고하고 유연한 파이썬 애플리케이션을 만드는 데 실질적인 도움을 줍니다. 핵심 비즈니스 로직을 외부 관심사로부터 분리하는 방법, 시스템 구성 요소 간에 명확한 인터페이스를 설계하는 방법, 그리고 변화하는 요구 사항에 소프트웨어가 효과적으로 적응하도록 만드는 설계 패턴의 구현 방법을 배울 수 있습니다. 책을 다 읽고 나면 클린 아키텍처를 직접 프로젝트에 구현할 수 있는 이론적 이해와 실무 역량을 모두 갖추게 될 것입니다.

[PART 1 파이썬 클린 아키텍처 기초]
1장. 클린 아키텍처 핵심: 파이썬 개발의 변화
_1.1 기술적 요구 사항
_1.2 파이썬에서 클린 아키텍처가 필요한 이유: 계획과 민첩성의 균형에서 얻는 장점
_1.3 클린 아키텍처란 무엇인가?
_1.4 클린 아키텍처와 파이썬: 자연스러운 조합
_1.5 요약
_1.6 참고 자료
2장. SOLID 기초: 견고한 파이썬 애플리케이션 구축
_2.1 기술적 요구 사항
_2.2 집중적이고 유지보수하기 쉬운 코드: 단일 책임의 힘
_2.3 확장 가능한 시스템 구축: 파이썬에서 개방-폐쇄형 설계 수용
_2.4 인터페이스 분리 원칙: 클라이언트에 맞춘 인터페이스 설계
_2.5 경직에서 유연으로: 파이썬에서 상속과 인터페이스 재고
_2.6 유연성을 위한 결합 해제: 파이썬에서 의존성 역전
_2.7 요약
_2.8 참고 자료
3장. 파이썬의 타입 강화: 클린 아키텍처 견고하게 만들기
_3.1 기술적 요구 사항
_3.2 파이썬의 동적 환경에서 타입 인식 이해
_3.3 파이썬 타이핑 시스템 활용
_3.4 자동화된 정적 타입 검사 도구 활용
_3.5 요약
_3.6 참고 자료
[PART 2 파이썬에서 클린 아키텍처 구현]
4장. 도메인 주도 설계: 핵심 비즈니스 로직 설계
_4.1 기술적 요구 사항
_4.2 DDD로 도메인 계층 식별하고 모델링
_4.3 파이썬으로 엔터티 구현
_4.4 애그리게이트와 팩토리로 도메인 모델 강화
_4.5 도메인 독립성 보장
_4.6 요약
_4.7 참고 자료
5장. 애플리케이션 계층: 유스 케이스에서의 조율
_5.1 기술적 요구 사항
_5.2 애플리케이션 계층의 역할 이해
_5.3 유스 케이스 인터랙터 구현
_5.4 요청 및 응답 모델 정의
_5.5 외부 서비스로부터의 분리 유지
_5.6 요약
_5.7 참고 자료
6장. 인터페이스 어댑터 계층: 컨트롤러와 프레젠터
_6.1 기술적 요구 사항
_6.2 인터페이스 어댑터 계층 설계
_6.3 파이썬에서 컨트롤러 구현
_6.4 인터페이스 어댑터를 통한 경계 강화
_6.5 데이터 형식화를 위한 프레젠터 구축
_6.6 요약
_6.7 참고 자료
7장. 프레임워크 및 드라이버 계층: 외부 인터페이스
_7.1 기술적 요구 사항
_7.2 프레임워크 및 드라이버 계층의 이해
_7.3 UI 프레임워크 어댑터 생성
_7.4 구성 요소 조직화와 경계
_7.5 데이터베이스 어댑터 구현
_7.6 외부 서비스 통합
_7.7 요약
_7.8 참고 자료
8장. 클린 아키텍처를 활용한 테스트 패턴 구현
_8.1 기술적 요구 사항
_8.2 클린 아키텍처에서의 테스트 기초
_8.3 깔끔한 구성 요소 테스트: 유닛 테스트의 실제 적용
_8.4 아키텍처 경계를 넘나드는 테스트
_8.5 테스트 유지보수를 위한 도구와 패턴
_8.6 요약
_8.7 참고 자료
[PART 3 파이썬에서 클린 아키텍처 적용]
9장. 웹 UI 추가: 클린 아키텍처의 인터페이스 유연성
_9.1 기술적 요구 사항
_9.2 클린 아키텍처에서의 인터페이스 유연성 이해
_9.3 클린 아키텍처의 웹 프레젠테이션 패턴
_9.4 플라스크와 클린 아키텍처의 통합
_9.5 요약
_9.6 참고 자료
10장. 관측 가능성 구현: 모니터링과 검증
_10.1 기술적 요구 사항
_10.2 클린 아키텍처에서 관측 가능성 경계 이해
_10.3 경계를 넘는 계측 구현
_10.4 피트니스 함수를 통한 아키텍처 무결성 검증
_10.5 요약
_10.6 참고 자료
11장. 레거시에서 클린으로: 유지보수를 위한 파이썬 리팩터링
_11.1 기술적 요구 사항
_11.2 아키텍처 변환 평가 및 계획 수립
_11.3 점진적 클린 아키텍처 구현
_11.4 요약
_11.5 참고 자료
12장. 클린 아키텍처 여정: 다음 단계
_12.1 이전 장들에서 살펴본 클린 아키텍처: 전체 조감
_12.2 시스템 타입에 따른 클린 아키텍처 적용
_12.3 아키텍처 리더십과 커뮤니티 참여
_12.4 요약
_12.5 참고 자료
AI 코딩 에이전트가 범람하는 시대에도 흔들리지 않는
'구조적 설계 역량'과 '지속 가능한 코드'에 대한 통찰
로버트 C. 마틴이 제안한 클린 아키텍처 원칙을 파이썬 환경에 맞춰 실천적으로 구현하는 방법을 다룹니다. 단순히 이론을 설명하는 데 그치지 않고, 할 일 관리 애플리케이션과 주문 처리 시스템 등의 실무 예제를 통해 도메인 엔터티, 유스 케이스, 인터페이스 어댑터, 프레임워크 계층을 단계별로 구축하는 과정을 보여줍니다. 특히 파이썬 3.13 이상의 최신 문법과 타입 힌팅, 프로토콜, 데이터 클래스를 적극 활용하여, 동적 언어인 파이썬에서도 견고한 아키텍처 경계를 유지하고 테스트 가능하며 확장성 있는 시스템을 설계하는 구체적인 전략을 제시합니다.
이 책을 다 읽고 나면 단순히 '돌아가는 코드'를 짜는 수준을 넘어, 도메인 주도 설계를 통해 비즈니스 핵심 가치를 보호하고, 요구 사항 변화에 유연하게 대응할 수 있는 아키텍처 경계를 설정하는 안목을 갖추게 됩니다. 나아가 DB, 웹 프레임워크 등 외부 기술의 변화가 시스템 전체의 대규모 수정으로 이어지지 않게 막아내는 법을 배우며, 테스트하기 쉽고 유지보수 비용이 낮은 '고품질 파이썬 애플리케이션'을 설계할 수 있는 전문가로 성장할 수 있습니다.
주요 내용
● 클린 아키텍처의 기본 개념을 이해하고 파이썬 애플리케이션에 SOLID 원칙을 적용하는 방법
● 타입 힌트를 활용해 아키텍처 경계와 인터페이스를 강화하는 파이썬 코드 작성
● 독립적인 비즈니스 로직을 캡슐화하는 견고한 도메인 모델과 애플리케이션 계층 구축
● 컨트롤러, 프레젠터, 어댑터를 활용해 아키텍처 계층 간 명확한 인터페이스 설계
● 아키텍처 무결성을 유지하면서 프레임워크 및 외부 시스템과 통합하는 방법
● 실무 시나리오에 클린 아키텍처 적용: 테스팅, 웹 인터페이스, 관측 가능성, 레거시 시스템 변환
카일 브라운 , 바비 울프 , 조셉 요더
막시밀리아노 콘티에리
해리 퍼시벌 , 밥 그레고리
마크 리처즈 , 닐 포드