책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 프로그래밍 기초/개발 방법론
· ISBN : 9788994506319
· 쪽수 : 256쪽
책 소개
목차
CHAPTER 1 좋은 코드란 무엇인가? ^
1.1 좋은 코드의 정의와 가치2
1.2 좋은 코드의 정의 2
1.3 좋은 코드의 가치 5
1.4 각 대표자들의 이야기 6
1.5 정리 7
CHAPTER 2 좋은 코드를 작성하기 위한 5가지 습관
2.1 좋은 코드는 하루아침에 되는 것이 아니다 10
2.2 습관 그 첫 번째 - 읽기
코드를 읽고 또 읽어라! 10
2.3 습관 그 두 번째 - 쓰기
어쨌든 코드를 작성해 보자 12
2.4 습관 그 세 번째 - 도구의 연마
사용하는 도구는 항상 갈고 닦아두자 13
2.5 습관 그 네 번째 - 알기
좋은 지식을 얻자 16
2.6 습관 그 다섯 번째 - 듣기
코드 등의 결과물과 사람들로부터의 피드백으로 더욱 성장하자 18
2.7 정리 20
CHAPTER 3 명명하기
3.1 좋은 코드는 좋은 이름에서 나온다 22
3.2 각 대표자들의 이야기 22
3.3 좋은 이름의 조건 23
3.4 변수명 29
3.5 메소드명 36
3.6 클래스명 38
3.7 패키지/네임스페이스명 40
3.8 프로젝트명 42
3.9 정리 42
CHAPTER 4 스코프
4.1 스코프를 의식하고 있는가? 46
4.2 스코프란 무엇인가? 46
4.3 스코프를 작게 해서 기억해 둘 것을 줄이자! 47
4.4 각 대표자들의 이야기 48
4.5 변수의 스코프 49
4.6 메소드의 스코프 58
4.7 클래스의 스코프 61
4.8 캐스트를 사용한 가시성의 제어 65
4.9 보다 큰 영역의 스코프 66
4.10 정리 67
CHAPTER 5 코드의 분할
5.1 적절한 크기로 코드를 분할하기 70
5.2 왜 코드를 분할하는가? 70
5.3 각 대표자들의 이야기 71
5.4 두 가지 방향으로의 분할 72
5.5 예제: 클라이언트에 XML을 반환하는 웹 API 처리의 분할 76
5.6 단계 1: 일단 코드를 작성해 보기 77
5.7 단계 2: 공통 처리를 메소드로 추출하여 분할하기 80
5.8 단계 3: 처리 단위로 분할하기 83
5.9 단계 4: 상태를 가진 처리를 클래스로 추출하여 분할하기 87
5.10 정리 93
CHAPTER 6 코드의 집약
6.1 코드의 중복은 나쁘다! 96
6.2 각 대표자들의 이야기 96
6.3 메소드로 추출하여 정리하기 97
6.4 계승으로 정리하기 99
6.5 유틸리티 클래스로 정리하기 100
6.6 서비츠 층에 정리하기 103
6.7 객체에 정리하기 104
6.8 정수에 정리하기 106
6.9 정리 107
CHAPTER 7 코드의 성능
7.1 성능을 의식하고 있는가? 110
7.2 각 대표자들의 이야기 110
7.3 성능은 계산량으로 결정된다 111
7.4 성능 개선의 순서 118
7.5 알고리즘 선택 이외의 성능 개선 121
7.6 성능 개선의 지침 123
7.7 정리 125
CHAPTER 8 단위테스트
8.1 테스트를 좋아하는가? 128
8.2 단위 테스트란 무엇인가? 128
8.3 각 대표자들의 이야기 130
8.4 단위 테스트의 효능 131
8.5 예제: 웹 애플리케이션의 보안 테스트 132
8.6 단계 1: 데이터베이스에 테스트 데이터 등록하기 133
8.7 단계 2: 화면의 구현 134
8.8 단계 3: 화면의 단위 테스트(정상계) 135
8.9 단계 4: 화면의 단위 테스트(이상계) 136
8.10 단위 테스트의 지침 137
8.11 정리 141
CHAPTER 9 추상화
9.1 추상화는 프로그래밍의 파워를 최대화한다 144
9.2 배열/컬렉션이란? 144
9.3 배열/컬렉션을 이용한 추상화 146
9.4 각 대표자들의 이야기 147
9.5 예제: 이미지 파일의 리스트를 표시하는 웹 애플리케이션 148
9.6 단계 1: 일단 코드를 대충 작성해 보기 149
9.7 단계 2: 가독성을 높이기 위한 메소드 추출 153
9.8 단계 3: 관련 데이터의 데이터 구조 정리 156
9.9 단계 4: 배열/컬렉션을 이용한 추상화 158
9.10 추상화의 지침 161
9.11 정리 162
CHAPTER 10 메타프로그래밍
10.1 프로그래밍을 프로그램하기 164
10.2 각 대표자들의 이야기 164
10.3 메타프로그래밍이란 무엇인가? 165
10.4 예제: Excel을 사용한 외부 DSL 171
10.5 단계 1: 일단 코드 작성해 보기 173
10.6 단계 2: 메타데이터를 Excel로 이동하기 176
10.7 단계 3: 리플렉션 API로 변환 규칙을 동적으로 적용하기 179
10.8 정리 187
CHAPTER 11 프레임워크를 만들자
11.1 프레임워크의 동작 원리 이해하기 190
11.2 각 대표자들의 이야기 190
11.3 예제: 웹 애플리케이션 프레임워크 만들기 191
11.4 단계 1: 기본이 되는 서블릿으로 작성해 보기 193
11.5 단계 2: 프런트 컨트롤러와 액션 클래스의 도입 196
11.6 단계 3: 라우팅 정보의 외부 파일화 201
11.7 단계 4: 자주 사용하는 처리를 간단하게 실행할 수 있도록 공통화하기 203
11.8 단계 5: 프레임워크를 패키지화한다 208
11.9 정리 210
APPENDIX A 코드 리딩 방법
A.1 코드에는 동적인 리딩 방법과 정적인 리딩 방법이 있다 212
A.2 Apache Commons IO의 코드 읽기 212
A.3 단계 1: 대상의 코드를 다운로드(체크 아웃)한다 213
A.4 단계 2: 정적인 방법으로 코드 읽기 214
A.5 단계 3: 동적인 방법으로 코드 읽기 219
A.6 정리 221
APPENDIX B 참고문헌 해설
후기
찾아보기