이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

가격
18,000
10 16,200
YES포인트?
900원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요

이미 소장하고 있다면 판매해 보세요.

  •  국내배송만 가능
  •  문화비소득공제 가능

책소개

목차

역자서문 5
서문 13

1장... 로드맵 | 19
개관 | 19
1부: 클래스 내부의 냄새 | 20
2부: 클래스 사이의 냄새 | 20
3부: 프로그램 리팩터링 | 21
도전사항에 대해 한 마디 | 22


1부 클래스 내부의 냄새 | 23

2장... 리팩터링 사이클 | 25
리팩터링이란 무엇인가? | 25
냄새는 문제다 | 26
리팩터링 사이클 | 27
언제 끝내야 할까? | 28
리팩터링 내부 | 31
도전사항 | 35
결론 | 35

3장... 측정할 수 있는 냄새 | 37
다루는 냄새 | 38
주석 | 38
긴 메서드 | 41
거대한 클래스 | 46
긴 매개변수 리스트 | 52
추가 도전사항 | 54
결론 | 55

쉬어가기1... 냄새와 리팩터링 | 57

4장... 이름 | 63
다루는 냄새 | 64
타입이 내장되어 있는 이름(헝가리안 표기법 포함) | 65
의사소통을 방해하는 이름 | 66
일관성 없는 이름 | 68

5장... 불필요한 복잡성 | 71
다루는 냄새 | 71
죽은 코드 | 72
추측성 일반화 | 73

쉬어가기2... 역관계 리팩터링 | 75

6장... 중복 | 77
다루는 냄새 | 78
매직 넘버 | 78
중복된 코드 | 79
다른 인터페이스를 갖는 대체 클래스 | 81
도전사항 | 82

7장... 조건 로직 | 89
다루는 냄새 | 90
Null 체크 | 90
복잡한 Boolean 표현식 | 91
특별 케이스 | 93
가장된 상속(Switch 문) | 94
쉬어가기3... 디자인 패턴 | 101


2부 클래스 사이의 냄새 | 103

8장... 데이터 | 105
다루는 냄새 | 105
기본 타입에 대한 강박관념 | 106
데이터 클래스 | 110
데이터 덩어리 | 115
임시 필드 | 116

9장... 상속 | 119
다루는 냄새 | 119
거부된 유산 | 120
부적절한 친밀(하위 클래스 형태) | 122
게으른 클래스 | 123

10장... 책임 | 125
다루는 냄새 | 125
기능에 대한 욕심 | 126
부적절한 친밀(일반적인 형태) | 128
메시지 체인 | 129
미들 맨 | 132
도전 문제 | 133

11장... 변경 수용하기 | 137
다루는 냄새 | 137
여러 원인에 의한 변경 | 138
산탄총 수술 | 141
평행 상속 계층구조 | 143
조합적 폭발 | 144

12장... 라이브러리 클래스 | 147
다루는 냄새 | 147
불충분한 라이브러리 클래스 | 147
도전 문제 | 149

쉬어가기4... 리팩터링 생성하기 | 153


3부 프로그램 리팩터링 | 155

13장... 데이터베이스 예제 | 157
Course.java | 159
Offering.java | 161
Schedule.java | 163
Report.java | 167
TestSchedule.java | 169
TestReport.java | 173

14장... 간단한 게임 | 179
개발 에피소드 | 187

15장... 목록 | 191
도입 | 191
경로 1: Catalog.itemsMatching(query) | 192
경로 2: Query.matchesIn(catalog) | 196
경로 3: Process(catalog.data, query.data) | 197
결론 | 198

16장... 계획 짜기 게임 시뮬레이터 | 199
1부: 초기 코드 | 200
Table.java | 200
Background.java | 2005
Card.java | 206
2부: 기능 재분배하기 | 212
중복, 선택 문제, 몇 가지 거친 조각 제거하기 | 215
3부: 코드 좀더 다듬기 | 219


17장... 향후 과제 | 223
책 | 223
권고 사항 | 223
시도해 볼 만한 것들 | 224
웹 사이트 | 226


4부 부록 | 227

부록A... 연습문제 해답 | 229

부록B... 자바 리팩터링 도구들 | 269

부록C... 각 리팩터링의 역관계 리팩터링 | 271

부록D... 주요 리팩터링 기법 | 273


참고 자료 | 277
찾아보기 | 279

저자 소개

저자 : 윌리엄 웨이크(WILLIAM C. WAKE)
소프트웨어 컨설턴트, 코치, 트레이너로서 20여 년간 프로그래밍을 하고 있다. 그는 Capital One Financial, MCI/WorldCom, VTLS, Inc. 등에서 일했으며 다른 저서로는『Extreme Programming Explored』, 『Design Pattern in Java 2/E』가 있다.
역자 : 장시형(sonagbi@gmail.com)
고려대학교와 동 대학원을 졸업하고 대림I&S에서 소프트웨어 개발자, IT 컨설턴트로 일하며 MIS, 포탈 등의 비즈니스 시스템을 개발했고, 현재는 동부정보기술에서 컨설턴트, 프로젝트 매니저로 일하고 있다. 역서로『C#과 닷넷 플랫폼, 제2판』(사이텍미디어)이 있고, 공역한 책으로 『Java How to Program, 제5판』(피어슨에듀케이션코리아)이 있다.
역자 : 송치형(scroco@naver.com)
충남 과학고를 졸업하고 서울대에서 컴퓨터 공학과 경제학을 전공하고 있다. 코어 로직스에서 데이터마이닝 및 OLAP 엔진, 현대 상선에서 예산 프로젝션 엔진, 컨설팅 업체에서 휴대폰 요금제에 따른 이동통신사 수익률 시뮬레이션 프로그램, 다날에서 룰 기반의 위기관리 시스템과 결제 프레임워크, 중국 휴대폰 결제 시스템을 개발했다. 역서로는 『실전 코드로 배우는 실용주의 디자인 패턴』(사이텍미디어)이 있고, 『생각하는 Big Java』(사이텍미디어) 등을 공역했다.

품목정보

발행일
2006년 09월 05일
쪽수, 무게, 크기
282쪽 | 175*225*20mm
ISBN13
9788991268159

리뷰/한줄평0

리뷰

첫번째 리뷰어가 되어주세요.

한줄평

첫번째 한줄평을 남겨주세요.