장바구니 담기 close

장바구니에 상품을 담았습니다.

생각하는 프로그래밍 (프로그래밍 본질에 관한 15가지 에세이)

생각하는 프로그래밍 (프로그래밍 본질에 관한 15가지 에세이)

  • 존 벤틀리
  • |
  • 인사이트
  • |
  • 2013-12-24 출간
  • |
  • 421페이지
  • |
  • 163 X 235 mm
  • |
  • ISBN 9788966260997
★★★★★ 평점(10/10) | 리뷰(1)
판매가

22,000원

즉시할인가

19,800

배송비

2,300원

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
19,800

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

목차

제1부 준비

칼럼1 조개껍질 깨기
대화 / 정확한 문제 기술 / 프로그램 디자인 / 구현 스케치 / 원리
연습문제 / 더 읽을거리

칼럼2 아하! 알고리즘
세 가지 문제 / 여기저기에서 쓰이는 이진 탐색(Binary Search)
기초적인 조작의 위력 / 정렬 / 원리 / 연습문제 / 더 읽을거리
sidebar : 전철어구 프로그램의 구현

칼럼3 프로그램의 구조를 결정하는 데이터
설문 조사 프로그램 / 폼 레터 프로그래밍 / 다른 예제들 / 데이터 구조화하기
특화된 데이터를 위한 강력한 도구 / 원리 / 연습문제

칼럼4 정확한 프로그램 작성
생각보다 어려운 이진 탐색 / 프로그램 작성 / 프로그램에 대한 이해
원리 / 프로그램 검증의 역할 / 연습문제 / 더 읽을거리

칼럼5 프로그래밍에서의 사소한 문제
가상코드로부터 C로 / 테스트 장치(harness) / 단정문(assertion)사용 요령
자동화된 테스트 / 시간측정 / 완전한 프로그램 / 원리 / 연습문제
더 읽을거리
sidebar : 디버깅

제2부 퍼포먼스

칼럼6 퍼포먼스에 대한 개관
사례 연구 / 디자인의 수준 / 원리 / 연습문제 / 더 읽을거리

칼럼7 봉투뒷면에 하는 간단한 계산
기초 기술 / 퍼포먼스 추정 / 안전계수(Safety Factors)/ Little의 법칙
원리 / 연습문제 / 더 읽을거리
sidebar : 일상생활에서의 간단한 계산

칼럼8 알고리즘 디자인 기법
문제 및 간단한 알고리즘 / O(n2) 알고리즘 두 가지 / 나누어 푸는 알고리즘
스캐닝(scanning) 알고리즘 / 무엇이 중요한가? / 원리 / 연습문제 / 더 읽을거리

칼럼9 코드 튜닝
전형적인 이야기 / 코드 튜닝의 몇 가지 예제 / 대수술-이진 탐색 / 원리
연습문제 / 더 읽을거리

칼럼10 메모리 절약
핵심-단순함 / 이해를 돕는 문제 / 데이터 공간을 위한 기법
코드 공간을 위한 기법 / 원리 / 연습문제 / 더 읽을거리
sidebar : 대규모 절감

제3부 프로덕트

칼럼11 정렬
삽입 정렬 / 간단한 퀵 정렬 / 개선된 퀵 정렬 / 원리 / 연습문제 / 더 읽을거리

칼럼12 표본 선정 문제
문제 / 솔루션 하나 / 디자인 공간 / 원리 / 연습문제 / 더 읽을거리

칼럼13 탐색
인터페이스 / 선형적 구조 / 이진 탐색 트리 / 정수를 위한 구조 / 원리
연습문제 / 더 읽을거리
sidebar : 실질적 탐색 문제

칼럼14 힙(Heaps)
데이터 구조 / 두 가지 중요한 함수 / 우선순위 큐 / 정렬 알고리즘 / 원리
연습문제 / 더 읽을거리

칼럼15 문자열 처리
단어 / 어구 / 텍스트 생성하기 / 원리 / 연습문제 / 더 읽을거리

1판에 대한 에필로그
2판에 대한 에필로그

부록1 알고리즘 카탈로그
부록2 추정퀴즈
부록3 시간과 공간에 대한 비용모델
부록4 코드 튜닝을 위한 규칙
부록5 탐색을 위한 C++ 클래스
연습문제 힌트
연습문제 해답

도서소개

프로그래밍 사고력 훈련의 첫걸음
프로그래밍 본질에 관한 15가지 에세이 『생각하는 프로그래밍』. ACM의 전통 있는 간행물 CACM에 연재된 《Programming Pearls》의 칼럼을 엮은 것으로, 몇 개의 간단한 알고리즘 및 데이터 구조를 통해 문제를 정확히 분석하고 효율적으로 해결할 수 있도록 생각하는 방법을 알려주는 책이다. 1부에서는 문제 정의, 알고리즘, 데이터 구조, 프로그램 검증, 테스팅과 같은 프로그래밍의 기본을 복습하고, 2부에서는 효율성에 관한 주제를 다루며, 3부에서는 이들 기술을 정렬, 탐색, 문자열과 같은 실질적인 문제에 적용한다.
프로그래밍 언어 문법을 외우고 개발 도구를 사용법을 익히면 소프트웨어를 만들 수 있다고 흔히 생각하지만, 실제 세계에서 부딪히는 개발 작업은 도구의 단순 사용을 반복하는 것이 아니라 깊은 사고력을 요하는 기예(技藝)에 가깝다. 시시각각 변하는 환경과 제한된 예산, 기간의 압박 속에서 각자 한계가 있는 현존 기술로 최적의 해법을 찾는 일을 도구나 언어가 100% 대신해 줄 수는 없다.
프로그래밍에서 이런 사고력 훈련의 첫걸음은 데이터 구조나 알고리즘 같은 기초를 적절히 학습하고 이를 코드로 구현하고 단계적으로 개선해 가는 것으로 시작할 수 있다. 이 책은 이런 수련을 하는 데 유용한 고전이다. ACM의 전통 있는 간행물인 CACM에 연재된 「Programming Pearls」란 칼럼을 묶어 발간된 이 책은 제목 그대로 조개 속에서 진주가 만들어지듯 긴 사고의 과정을 거쳐 깊은 프로그래밍의 세계에 들어갈 수 있도록 안내하고 있다.
눈앞에 닥친 비즈니스 로직의 정답을 문제집처럼 알려주지는 않지만 이 책을 계기로 충분한 수련을 거친 개발자라면 남의 답을 베끼는 것이 아니라 자신만의 해법을 고안해내는 즐거움을 누릴 수 있을 것이다.

이 책에서 다루는 내용
- 문제 정의, 알고리즘, 데이터 구조 등 프로그래밍의 기본
- 효율성 제고 기법
- 정렬, 탐색, 문자열 등 구체적 문제에 대한 해법

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.