클린 소프트웨어 (애자일 원칙과 패턴, 그리고 실천 방법 | 반양장)

클린 소프트웨어 (애자일 원칙과 패턴, 그리고 실천 방법 | 반양장)

$47.90
Description
소프트웨어 개발을 위한 사려 깊은 조언으로 가득한 책! 《클린 코드》를 비롯한 베스트셀러 저자이자 소프트웨어 개발 전문가로 저명한 로버트 C. 마틴은 이 책을 통해 소프트웨어 개발자, 프로젝트 관리자, 소프트웨어 프로젝트 리더들이 안고 있는 문제에 대한 해결책을 제시하고 있다. 애자일 개발 방식의 창시자 중 한 명이기도 한 저자는 이 책을 통해 애자일 개발 방식과 익스트림 프로그래밍에 대해 포괄적이고 실용적인 튜토리얼을 제공한다.
저자

로버트 C. 마틴

저자 로버트 C. 마틴(Robert C. Martin)은 ‘밥’이라고 불리며, 오브젝트 멘토(Object Mentor, Inc.)의 창립자이자 대표다. 밥과 그의 소프트웨어 컨설턴트 팀은 객체 지향 디자인, 패턴, UML, 애자일 방법론, 그리고 익스트림 프로그래밍으로 전 세계의 고객에게 서비스를 제공하고 있다. 《클린 코드》, 《UML 실전에서는 이것만 쓴다》를 포함한 베스트셀러의 저자이기도 한 그는 《Pattern Languages of Program Design 3》의 편집위원장, 《More C++ Gems》의 편집위원이었으며, 제임스 뉴커크와 《XP in Practice》를 공동 저술하기도 했다. 1996년부터 1999년까지는 [C++ Report]의 편집위원장이었으며, 국제 콘퍼런스와 무역 전시회에서 유명한 강연자이기도 하다.

목차

PART 1 애자일 개발
CHAPTER 1 애자일 실천방법 _ 4
CHAPTER 2 익스트림 프로그래밍 소개 _ 15
CHAPTER 3 계획 세우기 _ 27
CHAPTER 4 테스트 주도 개발 _ 34
CHAPTER 5 리팩토링 _ 45
CHAPTER 6 프로그래밍 에피소드 _ 59

PART 2 애자일 설계
CHAPTER 7 애자일 설계란 무엇인가? _ 110
CHAPTER 8 단일 책임 원칙(SRP) _ 124
CHAPTER 9 개방 폐쇄 원칙(OCP) _ 130
CHAPTER 10 리스코프 치환 원칙(LSP) _ 144
CHAPTER 11 의존 관계 역전 원칙(DIP) _ 166
CHAPTER 12 인터페이스 분리 원칙(ISP) _ 177

PART 3 급여 관리 사례 연구
CHAPTER 13 커맨드와 액티브 오브젝트 패턴 _ 199
CHAPTER 14 템플릿 메소드와 스트래터지 패턴: 상속과 위임 _ 211
CHAPTER 15 퍼사드 패턴 _ 226
CHAPTER 16 싱글톤과 모노스테이트 패턴 _ 231
CHAPTER 17 널 오브젝트 패턴 _ 244
CHAPTER 18 급여 관리 사례 연구: 반복의 시작 _ 248
CHAPTER 19 급여 관리 사례 연구: 구현 _ 263

PART 4 급여 관리 시스템 패키징
CHAPTER 20 패키지 설계의 원칙 _ 321
CHAPTER 21 팩토리 패턴 _ 345
CHAPTER 22 급여 관리 사례 연구(2부) _ 354

PART 5 기상 관측기 사례 연구
CHAPTER 23 컴포지트 패턴 _ 379
CHAPTER 24 옵저버 패턴: 패턴으로 돌아가기 _ 383
CHAPTER 25 추상 서버, 어댑터, 브리지 패턴 _ 408
CHAPTER 26 프록시 패턴 프록시와 천국으로의 계단 패턴: 서드파티 API 관리 _ 421
CHAPTER 27 사례 연구: 기상 관측기 _ 454

PART 6 ETS 사례 연구
CHAPTER 28 비지터 패턴 _ 497
CHAPTER 29 스테이트 패턴 _ 533
CHAPTER 30 ETS 프레임워크 _ 561

APPENDIX A UML 표기법 I: CGI 예제 _ 597
APPENDIX B UML 표기법 II: 스태트먹스 _ 629
APPENDIX C 두 기업에 대한 풍자 _ 655
APPENDIX D 소스 코드는 곧 설계다 _ 671

찾아보기 _ 685

출판사 서평

이 책의 주요 특징
-소프트웨어 개발자와 프로젝트 관리자에게 애자일 개발 방식을 통해 프로젝트를 예산과 일정에 맞게 끝내는 방법을 안내한다.
-익스트림 프로그래밍을 사용해 계획하고, 테스트하고, 리팩토링하고, 짝 프로그래밍하는 방식을 보여주기 위해 실제 사례 연구를 사용한다.
-재사용 가능한 풍부한 C++와 자바 코드를 담고 있다.
-UML과 디자인 패턴을 사용해 고객 지향적 시스템의 문제를 해결하는 데 초점을 맞춘다.

[추천사]
“나는 이런 책을 정말 오래 기다려왔다. 마틴은 우리의 기술 향상에 필요한 실용적인 지식으로 무장된 사람이다.”
_마틴 파울러 / 컨설턴트이자 《리팩토링》의 저자
“아마 이 책은 애자일 방법, 패턴, 그리고 현대적인 소프트웨어 개발 방식의 기초를 하나로 엮어낸 첫 번째 책일 것이다. 밥 마틴이 말하면, 주의 깊게 들어라.”
_존 블리스사이즈 / 컨설턴트이자 《Pattern Hatching: Design Patterns Applied》의 저자

“밥 마틴은 숙련된 개발자와 교육자로서의 재능을 이 책에 모두 쏟아부었다. 그만의 실용적 통찰력과 유쾌한 문체가 가득한 책이다.”
_크레이그 라만 / 컨설턴트이자 《UML과 패턴의 적용》의 저자