HOME > 상세정보

상세정보

Code Craft : 뛰어난 코드 작성을 위한 실천 지침

Code Craft : 뛰어난 코드 작성을 위한 실천 지침 (21회 대출)

자료유형
단행본
개인저자
Goodliffe, Pete 김윤명 , 역
서명 / 저자사항
Code Craft : 뛰어난 코드 작성을 위한 실천 지침 / 피트 구들리프 지음 ; 김윤명 옮김.
발행사항
서울 :   한빛미디어 ,   2007.  
형태사항
752 p. : 삽도 ; 26 cm.
원표제
Code Craft
기타표제
읽기 쉽고 매력적이며 재미있는 코드 개발의 지혜들 : 장인의 실수와 경험을 통해 배운다
ISBN
9788979145144
서지주기
참고문헌(p. 733-737) 및 색인수록
일반주제명
Computer programming. Programming languages (Electronic computers) Computer software --Development.
000 00943namccc200289 k 4500
001 000045398319
005 20100806112631
007 ta
008 071108s2007 ulka b 001a kor
020 ▼a 9788979145144 ▼g 93000
040 ▼a 211009 ▼c 211009 ▼d 211009
041 1 ▼a kor ▼h eng
082 0 4 ▼a 005.1 ▼2 22
090 ▼a 005.1 ▼b 2007s1
100 1 ▼a Goodliffe, Pete ▼0 AUTH(211009)64613
245 1 0 ▼a Code Craft : ▼b 뛰어난 코드 작성을 위한 실천 지침 / ▼d 피트 구들리프 지음 ; ▼e 김윤명 옮김.
246 0 3 ▼a 읽기 쉽고 매력적이며 재미있는 코드 개발의 지혜들 : 장인의 실수와 경험을 통해 배운다
246 1 9 ▼a Code Craft
260 ▼a 서울 : ▼b 한빛미디어 , ▼c 2007.
300 ▼a 752 p. : ▼b 삽도 ; ▼c 26 cm.
504 ▼a 참고문헌(p. 733-737) 및 색인수록
650 0 ▼a Computer programming.
650 0 ▼a Programming languages (Electronic computers)
650 0 ▼a Computer software ▼x Development.
700 1 ▼a 김윤명 , ▼e
945 ▼a KINS

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.1 2007s1 등록번호 111446703 (5회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 2 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.1 2007s1 등록번호 121159238 (5회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 3 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.1 2007s1 등록번호 121159239 (11회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.1 2007s1 등록번호 111446703 (5회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.1 2007s1 등록번호 121159238 (5회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 2 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.1 2007s1 등록번호 121159239 (11회 대출) 도서상태 대출가능 반납예정일 예약 서비스 B M

컨텐츠정보

책소개

모든 프로그래머는 뛰어난 코드를 만들고자 하며 장인이 되고자 한다. 그러나 그 길은 쉽지 않다. 단지 '기술적인 능력'만 배워서는 안 되기 때문이다. 열정, 전략, 문제 해결 능력 등 여러 가지 복합적 능력이 잘 조화를 이루어야 뛰어난 코드를 만들 수 있다.

저자는 다년간의 실무경험을 바탕으로 훌륭한 프로그래머를 위한 훈련 코스를 만들었다. 단계별로 밟아갈 수도 있고 원하는 부분만 읽어도 충분히 관련 지식을 습득할 수 있도록 구성하였다. 구체적인 코드 작성을 논하는 기술적인 측면뿐만 아니라 열정이나 가치관과 같은 심리적 측면 그리고 조직적인 관리와 같은 공학적인 측면까지 폭넓게 다루면서 신출내기 프로그래머를 넘어서 훌륭한 프로그래머로서 갖추어야 할 것들을 제시한다.

프로그래머의 습관이나 사고방식 그리고 주변의 문제들을 돌아보고 단점을 고칠 수 있도록 해주는 수많은 문제들도 훌륭한 프로그래머로 거듭나는 데 도움을 준다.

읽기 쉽고 매력적이며 재미있는 코드 개발의 지혜들: 장인의 실수와 경험을 통해 배운다.
뛰어난 코드 작성을 위해서는 '기술적인 능력' 이상의 것이 필요합니다.

모든 프로그래머는 뛰어난 코드를 만들고자 합니다. 장인이 되고자 합니다. 그러나 그 길은 쉽지가 않습니다. 단지 '기술적인 능력'만 배워서는 안 되기 때문입니다. 열정이 있어야 하고 전략이 있어야 하며 문제 해결 능력 등 여러 가지 복합적 능력이 잘 조화를 이루어야 뛰어난 코드를 만들 수 있습니다.

현장 경험이 풍부한 저자는 다년간의 실무경험을 바탕으로 훌륭한 프로그래머를 위한 훈련 코스를 만들었습니다. 단계별로 밟아갈 수도 있고 원하는 부분만 읽어도 충분히 관련 지식을 습득할 수 있도록 구성하였습니다. 구체적인 코드 작성을 논하는 기술적인 측면뿐만 아니라 열정이나 가치관과 같은 심리적 측면 그리고 조직적인 관리와 같은 공학적인 측면까지 폭넓게 다루면서 신출내기 프로그래머를 넘어서 훌륭한 프로그래머로서 갖추어야 할 것들을 제시합니다.

프로그래머의 습관이나 사고방식 그리고 주변의 문제들을 돌아보고 단점을 고칠 수 있도록 해주는 수많은 문제들도 훌륭한 프로그래머로 거듭나는 데 큰 도움을 줄 것입니다.

주요 내용
튼튼한 코드를 위한 방어적 프로그래밍 테크닉
소스 코드의 레이아웃과 프레젠테이션
중요한 것에 의미 있는 이름 붙이기
코멘트를 작성하는 방법
피할 수 없는 운명 다루기
코드 안의 에러 상황
소프트웨어 구축에 툴 사용하기
코드 테스트라는 마술
디버깅: 무언가 잘못 돌아갈 때 해야 할 일
소스 코드를 실행 코드로 바꾸는 메커니즘
프로그램의 최적화와 효율적인 코드의 작성
안전한 프로그램 작성하기
바람직한 소프트웨어 설계를 하는 방법
소프트웨어 설계의 토대 쌓기
코드는 어떻게 성장할까?
프로그래밍에 대한 올바른 태도와 접근 방법 기르기
팀워크와 개인 프로그래머
소스 컨트롤과 셀프-컨트롤
소프트웨어 규격서 작성하기
코드 리뷰 수행하기
소프트웨어 소요 시간 추정이라는 마술
코드 개발 방법론과 프로세스
"너무 많은 프로그래머들이 부서지기 쉬운 블록탑처럼 코드를 작성합니다. 갑자기 기반을 살짝 찌르면 전체가 무너집니다. 코드는 층층이 지어지는 것입니다. 그러니까 한 층 위에 다른 층을 건축할 수 있도록 각 층을 완전하게 만드는 확실한 테크닉이 필요합니다."
- 1장 "방어하기"에서

어떤 독자를 위한 책인가?
자기 코드의 질을 향상시키고 싶어하는 프로그래머
모든 프로그래머는 나은 프로그래머가 되고 싶어 하는 포부를 가져야 합니다. 만약 그런 포부가 없다면 이 책은 당신을 위한 것이 아닙니다. 일을 시작한지 몇 년이 지난 직업적인 프로그래머일 수도 있고, 프로그래밍 개념에는 익숙하지만 최적으로 응용하는 방법을 모르는 학생일수도 있습니다.

이 책을 읽는 독자는 반드시 프로그래밍을 해본 경험이 있어야 합니다.
이 책은 프로그램의 작성 방법은 가르쳐주지 않습니다. 프로그램을 더 잘 작성하는 방법만 가르쳐줄 것입니다. 특정 언어에 치우치거나 독단적인 주장을 하는 일을 피하려고 노력했지만, 코드 예제를 보여주어야 할 필요는 있었습니다. 그런 코드는 대부분 C, C++, Java로 쓰였는데, 그 이유는 이 언어들이 현재 인기 있는 언어이기 때문입니다. 이 중 어느 것도 대단한 전문 지식이 있어야만 읽을 수 있는 것은 아닙니다. 따라서 꼭 C++에 능통한 프로그래머가 아니더라도 두려워할 필요가 없습니다.


정보제공 : Aladin

저자소개

피트 구들리프(지은이)

프로그래머이자 소프트웨어 개발 칼럼니스트이고, 음악가이며 작가다. 소프트웨어 업계에서 그는 특정 영역에 머무르지 않는다. OS 개발부터 오디오 코덱, 멀티미디어 애플리케이션, 임베디드 펌웨어, iOS 애플리케이션 개발, 데스크톱 애플리케이션 개발에 이르기까지 그의 손이 닿지 않은 곳이 드물다. ‘더 나은 프로그래머 되기’라는 칼럼을 매거진에 기고하고 있고, 다양한 소프트웨어 개발 서적의 저술에 참가했으며, 정기적으로 소프트웨어 개발 주제에 대한 발표를 진행 중이다.

김윤명(옮긴이)

이화여대 컴퓨터학과를 졸업하고 캐나다 토론토에서 개발자로 근무하였다. 귀국하여 현재 글로벌잉글리쉬에서 테스트 엔지니어로 근무하고 있으며, 「소프트웨어 테스팅, 마이크로소프트에서는 이렇게 한다」를 번역하였다.

정보제공 : Aladin

목차


목차
역자 서문 = 4
저자 서문 = 6
감사의 글 = 15
Code Craft에 보내는 찬사 = 16
1부 코드와 마주보기
 01. 방어하기 - 튼튼한 코드를 작성하기 위한 방어적 프로그래밍 테크닉 = 37
  훌륭한 코드를 향해서 = 38
  최악을 가정하라 = 39
  방어적 프로그래밍이란? = 40
  험한 세상 = 43
  방어적 프로그래밍을 위한 테크닉 = 44
  제약 = 54
  간추림 = 59
  참고 = 60
  생각해 봅시다 = 61
 02. 최고의 레이아웃 계획 - 소스 코드의 레이아웃과 프레젠테이션 = 63
  정말 그게 중요해? = 64
  누가 읽을 것인지 알아야 = 65
  좋은 프레젠테이션이란? = 66
  중괄호 위치 정하기 = 67
  모두를 지배하는 하나의 스타일 = 72
  하우스 스타일(그리고 어디에 붙여놓을 것인가) = 72
  표준 정하기 = 75
  정당한 전쟁이라고? = 78
  간추림 = 79
  참고 = 81
  생각해 봅시다 = 82
 03. 이름이 뭐길래 - 중요한 것에 의미 있는 이름 붙이기 = 85
  왜 이름을 잘 붙여야 하나? = 87
  우리는 무엇에 이름을 붙이는가? = 88
  이름 붙이기 = 88
  세세한 실무 = 91
  장미는 다른 이름으로 불리어도 = 99
  간추림 = 103
  참고 = 104
  생각해 봅시다 = 104
 04. 문서화 도구 - "스스로-문서화하는" 코드 작성 테크닉 = 107
  스스로-문서화하는 코드 = 109
  스스로-문서화하는 코드 작성 테크닉 = 112
  스스로-문서화하는 코드 작성의 실무 방법론 = 118
  간추림 = 123
  참고 = 124
  생각해 봅시다 = 124
 05. 가벼운 코멘트 - 코멘트를 작성하는 방법 = 127
  코멘트란 무엇인가? = 128
  코멘트는 어떻게 생겼는가? = 129
  얼마나 많은 코멘트가 필요할까? = 129
  코멘트 안에는 무엇이 들어갈까? = 130
  실무에서는 = 135
  코멘트의 미학 = 136
  코멘트 가지고 일하기 = 142
  간추림 = 144
  참고 = 145
  생각해 봅시다 = 146
 06. 사람은 실수를 하기 마련 - 피할 수 없는 운명 다루기 - 코드 안의 에러 상황 = 149
  어디에서 나왔나? = 150
  에러 리포트 메커니즘 = 152
  에러 감지하기 = 157
  에러 처리하기 = 159
  에러 일으키기 = 168
  에러 관리하기 = 170
  간추림 = 171
  참고 = 172
  생각해 봅시다 = 172
2부 코드의 비밀스러운 일생
 07. 프로그래머의 도구 상자 - 소프트웨어 구축에 툴 사용하기 = 177
  소프트웨어 툴이란? = 178
  왜 툴 걱정을 해야 하지? = 180
  파워 툴 = 182
  어느 툴을 선택할까? = 185
  간추림 = 197
  참고 = 198
  생각해 봅시다 = 198
 08. 시험 보는 시간 - 코드 테스트라는 마술 = 201
  현실 체크 = 202
  누가, 무엇을, 언제, 왜? = 205
  테스트는 어렵지 않다... = 208
  테스트의 유형 = 213
  단위 테스트 케이스 선택하기 = 218
  테스트를 위한 설계 = 220
  손 놓고도 할 수 있어! = 221
  고장과 직면해서 = 223
  결함의 관리 = 224
  간추림 = 227
  참고 = 228
  생각해 봅시다 = 228
 09. 결함 찾기 - 디버깅: 무언가 잘못 돌아갈 때 해야 할 일 = 231
  인생의 진실 = 232
  버그의 본성 = 233
  버그 박멸 = 240
  버그 사냥 = 242
  결함을 고치는 방법 = 249
  버그 예방법 = 251
  말벌 스프레이, 달팽이 살충제, 파리 끈끈이... = 251
  간추림 = 254
  참고 = 256
  생각해 봅시다 = 256
 10. 잭이 빌드한 코드 - 소스 코드를 실행 코드로 바꾸는 메커니즘 = 259
  언어 장벽 = 260
  두꺼비집으로 산 만들기 = 264
  빌드를 빌드하기 = 268
  좋은 빌드 시스템을 만드는 요소는? = 270
  작동 메커니즘 = 274
  릴리즈 빌드 = 281
  만물박사 빌드마스터 = 283
  간추림 = 284
  참고 = 285
  생각해 봅시다 = 285
 11. 속도의 필요성 - 프로그램의 최적화와 효율적인 코드의 작성 = 287
  최적화란 무엇인가? = 288
  코드의 최적화를 막는 것은? = 290
  왜 최적화가 안 되나? = 291
  왜 최적화를 하는가? = 294
  세세한 실무 = 295
  최적화 테크닉 = 300
  효율적인 코드 작성하기 = 309
  간추림 = 311
  참고 = 312
  생각해 봅시다 = 313
 12. 불안전 콤플렉스 - 안전한 프로그램 작성하기 = 315
  위험 = 316
  반대편 = 319
  변명, 변명 = 322
  취약점의 감지 = 322
  안전을 위해서라면 = 326
  간추림 = 332
  참고 = 332
  생각해 봅시다 = 333
3부 코드의 모습
 13. 웅대한 설계 - 바람직한 소프트웨어 설계를 하는 방법 = 339
  설계로서의 프로그래밍 = 340
  우리는 무엇을 설계하는가? = 341
  무엇을 위한 소동이지? = 343
  좋은 설계 = 343
  코드를 설계하는 방법 = 354
  간추림 = 359
  참고 = 360
  생각해 봅시다 = 361
 14. 소프트웨어 아키텍처 - 소프트웨어 설계의 토대 쌓기 = 363
  소프트웨어 아키텍처란? = 364
  좋은 아키텍처란? = 371
  아키텍처 스타일 = 373
  간추림 = 381
  참고 = 381
  생각해 봅시다 = 382
 15. 소프트웨어의 진화 또는 혁명? - 코드는 어떻게 성장할까? = 385
  소프트웨어의 부패 = 386
  경고 신호 = 389
  코드는 어떻게 성장하나? = 391
  불가능한 것 믿기 = 394
  우리가 할 수 있는 일은? = 395
  간추림 = 399
  참고 = 400
  생각해 봅시다 = 401
4부 프로그래머의 무리?
 16. 코드 멍키 - 프로그래밍에 대한 올바른 태도와 접근 방법 기르기 = 407
  코드 멍키 주식회사 = 408
  이상적인 프로그래머 = 424
  그래서 뭐? = 425
  변화하기 위해서는 = 426
  간추림 = 427
  액션 시트(Action Sheet) = 428
  참고 = 429
  생각해 봅시다 = 429
 17. 여기 우리 함께 서 있네 - 팀워크와 개인 프로그래머 = 433
  소프트웨어 개발팀 - 큰 그림 = 434
  팀의 조직 = 436
  팀워크를 위한 툴 = 439
  팀이 걸리는 질병 = 441
  좋은 팀워크에 도움이 되는 개인의 스킬과 성격 = 454
  팀워크의 원칙 = 458
  팀의 라이프 사이클 = 461
  간추림 = 469
  참고 = 470
  액션 시트(Action Sheet) = 471
  생각해 봅시다 = 472
 18. 안전한 소스 습관 - 소스 컨트롤과 셀프 컨트롤 = 473
  우리의 책임 = 474
  소스 컨트롤 = 475
  구성 관리 = 483
  백업 = 485
  소스 코드의 릴리즈 = 486
  소스 코드를 어디에 두든 = 487
  간추림 = 489
  참고 = 490
  생각해 봅시다 = 490
5부 프로세스의 일부
 19. 규격화하기 - 소프트웨어 규격서 작성하기 = 495
  규격서란 무엇인가? = 496
  규격서의 유형 = 498
  규격서가 포함해야 하는 것은? = 507
  규격서 작성의 프로세스 = 509
  우리가 규격서 작성을 안 하는 이유는? = 512
  간추림 = 514
  참고 = 515
  생각해 봅시다 = 516
 20. 사냥감 확인하기 - 코드 리뷰 수행하기 = 517
  코드 리뷰란? = 518
  언제 리뷰하나? = 520
  코드 리뷰 실시하기 = 522
  자신의 태도를 리뷰하라 = 528
  완벽한 코드 = 529
  코드 리뷰를 넘어서 = 531
  간추림 = 531
  참고 = 532
  체크리스트 = 533
  생각해 봅시다 = 534
 21. 얼마나 걸릴까? - 소프트웨어 소요 시간 추정이라는 마술 = 535
  눈감고 찍기 = 536
  추정이 그렇게 어려운 이유는? = 538
  압력 속에서 = 540
  실무적인 추정 방법 = 541
  계획 세우기 = 545
  뒤처지지 마라! = 549
  간추림 = 552
  참고 = 553
  생각해 봅시다 = 554
6부 정상으로부터의 조망
 22. 프로그램의 요리법 - 코드 개발 방법론과 프로세스 = 559
  프로그래밍 스타일 = 560
  요리법: 어떻게 그리고 무엇을 = 565
  개발 프로세스 = 566
  이미 충분해! = 579
  프로세스 고르기 = 580
  간추림 = 581
  참고 = 582
  생각해 봅시다 = 583
 23. 외적인 한계 - 여러 가지 프로그래밍 분야 = 585
  애플리케이션 프로그래밍 = 586
  게임 프로그래밍 = 590
  시스템 프로그래밍 = 591
  임베디드 프로그래밍 = 593
  분산 프로그래밍 = 596
  웹 애플리케이션 프로그래밍 = 598
  엔터프라이즈 프로그래밍 = 600
  수치 프로그래밍(numerical programming) = 601
  그래서 뭐? = 603
  간추림 = 603
  참고 = 604
  생각해 봅시다 = 605
 24. 다음엔 어디서? - 끝이 좋으면 다 좋다 = 607
  그러면 이젠 뭘 하지? = 608
답과 논의 = 611
참고문헌 = 733
찾아보기 = 738


관련분야 신착자료

Harvard Business Review (2025)