본문내용 바로가기
무료배송 소득공제

좋은 코드를 작성하는 기술 읽기 쉽고 유지보수가 쉬운 프로그래밍 작성법

아가타 토시타카 지음 | 정인식 옮김 | 제이펍 | 2011년 12월 09일 출간

이 책의 다른 상품 정보

  • 정가 : 20,000원
    판매가 : 18,000 [10%↓ 2,000원 할인]
  • 통합포인트 :
    [기본적립] 1,000원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2천원 추가적립 안내 [회원혜택] 실버등급 이상, 3만원 이상 구매 시 2~4% 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 도서상태 : 절판
상품상세정보
ISBN 9788994506319(8994506314)
쪽수 234쪽
크기 170 * 225 * 20 mm /522g 판형알림
원서명/저자명 良いコ-ドを書く技術 讀みやすく保守しやすいプログラミング作法/縣俊貴

책소개

이 책이 속한 분야

초보 프로그래머가 좋은 코드를 작성하도록 도와주는 『좋은 코드를 작성하는 기술』. 이 책은 읽기 쉽고 유지 및 보수가 쉬운 코드를 작성하는 비법을 실제 소스 코드를 예로 들어 단계적으로 소개하고 있다. 좋은 코드를 작성하는 관례에서부터 네이밍 방법, 코드 분할 및 통합하는 방법, 프로그래밍의 파워를 최대화하는 추상화 방법, 코드의 성능을 높이는 방법과 효율적인 알고리즘 작성법, 단위 테스트와 메타프로그래밍에 이르기까지 프로그래머로서의 역량을 기르기 위한 방법을 다루고 있다. 예제의 메인 언어는 자바이지만 루비나 자바스크립트 등의 언어로도 설명하고 있다.

목차

CHAPTER 1 좋은 코드란 무엇인가? _ 1
1.1 좋은 코드의 정의와 가치2
1.2 좋은 코드의 정의 2
1.3 좋은 코드의 가치 5
1.4 각 대표자들의 이야기 6
1.5 정리 7

CHAPTER 2 좋은 코드를 작성하기 위한 5가지 습관_ 9
2.1 좋은 코드는 하루아침에 되는 것이 아니다 10
2.2 습관 그 첫 번째 - 읽기
코드를 읽고 또 읽어라! 10
2.3 습관 그 두 번째 - 쓰기
어쨌든 코드를 작성해 보자 12
2.4 습관 그 세 번째 - 도구의 연마
사용하는 도구는 항상 갈고 닦아두자 13
2.5 습관 그 네 번째 - 알기
좋은 지식을 얻자 16
2.6 습관 그 다섯 번째 - 듣기
코드 등의 결과물과 사람들로부터의 피드백으로 더욱 성장하자 18
2.7 정리 20

CHAPTER 3 명명하기_ 21
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 스코프_ 45
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 코드의 분할_ 69
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 코드의 집약_ 95
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 코드의 성능_ 109
7.1 성능을 의식하고 있는가? 110
7.2 각 대표자들의 이야기 110
7.3 성능은 계산량으로 결정된다 111
7.4 성능 개선의 순서 118
7.5 알고리즘 선택 이외의 성능 개선 121
7.6 성능 개선의 지침 123
7.7 정리 125

CHAPTER 8 단위테스트_ 127
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 추상화_ 143
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 메타프로그래밍_ 163
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 프레임워크를 만들자_ 189
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 코드 리딩 방법_212
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 참고문헌 해설_ 222

후기 · 226
찾아보기 · 227

책 속으로

이 책은 일을 잘해 보고 싶은 초보 프로그래머가 좋은 코드를 작성할 수 있도록 하기 위한 해설서다. 엔지니어로서 좋은 코드를 작성할 수 있는 프로그래머는 (어디까지나 내 생각이지만) 업계에서 20% 정도뿐이다. 나머지 80%는 이른바 초보 프로그래머들인 셈이다. 그 80% 정도의 프로그래머 중에는 일을 잘해 보고 싶긴 하지만 좀처럼 요령을 터득하지 못했거나 또는 무엇부터 착수해야 하는지를 모르는 사람들이 많은 것 같다.

프로그래밍은 매우 창조적이고 흥미진진하며 즐거운 일이지만, 이런 식이라면 참 으로 아깝다는 생각이 든다. 내... 더보기

출판사 서평

초보 프로그래머를 위한 레벨 업 가이드!
유연하고 효율적인 소프트웨어를 얼마나 잘 구현할 것인가?
좋은 코드로의 여행을 시작합니다!

이 책은 읽기 쉽고 유지보수하기 쉬운 “좋은 코드”의 작성법을 설명하고 있는 프로그래밍 입문서다.

좋은 코드를 작성하는 관례에서 네이밍 방법, 코드 분할 및 통합하는 방법, 프로그래밍의 파워를 최대화하는 추상화 방법, 코드의 성능을 높이는 방법과 효율적인 알고리즘 작성법, 단위 테스트와 메타프로그래밍까지 프로그래머로서의 튼튼한 기초를 높여줄 수 있는 모든 것들을 다루고 있다.

이... 더보기

Klover 리뷰 (0)

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면
결제 90일 이내 300원, 발송 후 5일 이내 400원, 이 상품의 첫 리뷰 500원의 포인트를 드립니다.

포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
북로그 리뷰는 본인인증을 거친 회원만 작성 가능합니다.
(※ 외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외) 안내
  • 해당도서의 리뷰가 없습니다.

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매도서의 문장수집을 기록하면 통합포인트 적립 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①서양도서-판매정가의 12%, ②일본도서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품