logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

프로그래밍 수련법

프로그래밍 수련법

브라이언 W. 커니건, 롭 파이크 (지은이), 김정민, 장혜식, 신성국 (옮긴이)
인사이트
20,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
18,000원 -10% 0원
1,000원
17,000원 >
18,000원 -10% 0원
카드할인 10%
1,800원
16,200원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
알라딘 판매자 배송 29개 3,600원 >
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

프로그래밍 수련법
eBook 미리보기

책 정보

· 제목 : 프로그래밍 수련법 
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 프로그래밍 기초/개발 방법론
· ISBN : 9788991268210
· 쪽수 : 380쪽
· 출판일 : 2008-02-20

책 소개

프로그래밍 수련이란 단순히 코드를 작성하는 것만이 아니다. 프로그래머들은 설계, 디버깅, 테스트, 성능 개선, 소프트웨어 유지보수에 대한 트레이드오프(tradeoff)를 다뤄야만 한다. 이와 함께 소프트웨어의 명세를 유지하면서도 호환성, 견고성, 안정성 같은 문제들을 고려해야 한다. 이 책에는 C, C++, 자바 외에도 다양한 언어로 작성된 실전 예제와 현실적인 충고들이 가득하다.

목차

역자서문
들어가는 글
1장 스타일
1.1 이름
1.2 표현식과 문장
1.3 일관성과 관용 표현
1.4 매크로 함수
1.5 매직넘버
1.6 주석
1.7 왜 그렇게 귀찮게 구는가?

2장 알고리즘과 자료 구조
2.1 검색
2.2 정렬
2.3 라이브러리
2.4 자바의 퀵소트
2.5 O 표기법
2.6 크기가 커지는 배열들
2.7 리스트
2.8 트리
2.9 해시 테이블
2.10 요약

3장 설계와 구현
3.1 마르코프 체인 알고리즘
3.2 데이터 구조 후보들
3.3 C에서 데이터 구조를 만들기
3.4 출력 생성하기
3.5 자바
3.6 C++
3.7 Awk와 펄
3.8 성능
3.9 교훈

4장 인터페이스
4.1 콤마 구분값
4.2 프로토타입 라이브러리
4.3 다른 사람이 쓸 수 있는 라이브러리
4.4 C++ 구현
4.5 인터페이스 원칙
4.6 자원 관리
4.7 중단, 재시도, 실패?
4.8 사용자 인터페이스

5장 디버깅
5.1 디버거
5.2 실마리가 뚜렷한 쉬운 버그
5.3 실마리가 없는 어려운 버그
5.4 최후의 수단
5.5 재현 불가능한 버그
5.6 디버깅 툴
5.7 다른 사람의 버그
5.8 요약

6장 테스트
6.1 코딩하면서 테스트하기
6.2 체계적인 테스트
6.3 테스트 자동화
6.4 테스트 작업발판
6.5 부하 테스트
6.6 테스트 팁
6.7 누가 테스트를 하는가?
6.8 마르코프 프로그램 테스트
6.9 요약

7장 성능
7.1 병목현상
7.2 시간 측정과 프로파일링
7.3 속도를 위한 전략
7.4 코드 미세조정
7.5 공간 효율성
7.6 추정
7.7 요약

8장 호환성
8.1 언어
8.2 헤더와 라이브러리
8.3 프로그램 조직화
8.4 구분
8.5 데이터 교환
8.6 바이트 순서
8.7 호환성과 업그레이드
8.8 국제화
8.9 요약

9장 표기법
9.1 데이터 형식화
9.2 정규 표현식
9.3 프로그래밍 툴
9.4 해석기, 컴파일러, 가상머신
9.5 프로그램을 작성하는 프로그램
9.6 매크로로 코드 생성하기
9.7 동적 컴파일 하기

후기
부록 : 원칙 일람
찾아보기

저자소개

브라이언 커니핸 (지은이)    정보 더보기
벨 연구소 유닉스 개발팀의 일원이며, 30년 동안 벨 연구소의 컴퓨팅 과학 연구 센터에서 일했다. 스크립트 언어인 Awk와 모델링 언어인 AMPL을 공동 개발했고, 문서 조판용 도구를 포함하여 다양한 유닉스 프로그램을 만들었다. 토론토 대학교에서 기초공학 학사 학위를, 프린스턴 대학교에서 전기공학 박사 학위를 받았다. 2000년부터 현재까지 프린스턴 대학교의 컴퓨터 과학과 교수로 재직 중이다. 『C 언어 프로그래밍』(휴먼싸이언스, 2016)과 『프로그래밍 수련법』(인사이트, 2008) 등 십여 권의 IT 서적을 공동 집필했다. 이외 저서로 『Hello, Digital World』(제이펍, 2017)가 있다.
펼치기
롭 파이크 (지은이)    정보 더보기
롭 파이크는 Plan 9과 Inferno 운영체제의 수석 연구원이었으며, 켄 톰슨(Ken Tompson)과 UTF-8이라는 문자코드를 만들기도 했다. 현재 구글에서 분산 시스템과 데이터 마이닝, 프로그래밍 언어, 소프트웨어 개발 툴 분야의 Principal Engineer로 일하고 있다.
펼치기
김정민 (옮긴이)    정보 더보기
법무법인 위온 파트너 변호사 전) 디파이 스타트업 법무총괄, 이지케어텍 국내 법무총괄, SK텔레콤 법무실 변호사, 현대자동차 지적재산법무팀 변호사, SK텔레콤 정보기술연구원 소프트웨어 엔지니어 역서 : 『기계의 반칙』 (2023), 『기계는 어떻게 생각하고 학습하는가』 (2018)
펼치기
장혜식 (옮긴이)    정보 더보기
장혜식은 FreeBSD와 파이썬 개발자로 활동하고 있으며 주로 동적 언어 환경과 국제화, 과학계산을 위한 컴퓨팅에 관심이 많다. 한국 파이썬마을을 운영하며, 대안언어축제, 오픈소스에 뛰어들기, Framework2.1, KLDP CodeFest 등을 주관했다. 연세대학교 기계전자공학부를 졸업하고 현재 KAIST에서 단백질생물정보학을 전공하고 있다.
펼치기
신성국 (옮긴이)    정보 더보기
신성국은 삼성전자 디지털미디어연구소에서 임베디드 소프트웨어 개발자로 근무 중이다. C Programming FAQs의 한국어판을 관리하며, C/C++에서 Tcl, Scheme, Lisp에 이르기까지 다양한 언어를 즐겨 사용한다. 2007년에는 인터넷 TV에 들어가는 RSS 해석기 등 각종 소프트웨어를 개발했고 KLDP.org의 다양한 프로젝트에도 도움을 주고 있다. 취미는 책 수집이다.
펼치기

책속에서

일단 버그가 보이면, 제일 먼저 해야 할 일은 그것이 던져주는 실마리에 대해 곰곰이 생각해 보는 것이다. 어떻게 발생한 것일까? 낯익은 버그는 아닌가? 방금 프로그램에서 뭔가가 바뀌었나? 이 버그가 튀어나올 때 입력한 데이터에 특별한 게 있었나? 잘 골라낸 테스트 케이스 몇 개와 출력문 몇 개면 충분할 것이다.

뚜렷한 실마리가 없다 해도 곰곰이 생각해 보는 것이 첫 단계이며, 그 다음에 프로그램에서 버그 위치를 좁혀가기 위한 체계적인 방법을 시도한다. 한 가지 방법은 입력 데이터를 문제가 생기는 최소한의 크기까지 잘라내는 것이고, 또 다른 방법은 관계 없는 코드 부분을 제거해가는 것이다. 또 문제를 지역화하기 위해서 프로그램이 몇 번 실행된 다음에 스위치가 올라가는 점검 코드를 집어넣을 수도 있다. 이런 방법은 모두 일반 전략인 '각개격파(divide and conquer)를 활용한 것이다.

이 전략은 정치와 전쟁에서 그렇듯이 디버깅에서도 효과적이다. 다른 도움도 활용하라. 다른 사람(곰인형이라도 괜찮다)에게 자기 코드를 설명하는 방법은 환상적인 효과가 있다. 디버거를 사용해서 스택 추적값을 얻어 내라. 메모리 누수나 배열 경계 침범, 의심스러운 코드 등을 검사하는 상용 툴을 활용하라.

코드가 어떻게 돌아가는지 머리 속에 잘못된 그림이 들어있다는 게 확실해지면 프로그램 안으로 한 단계씩 파고 들어가며 분석하라. 자기 자신을 알고, 자신이 만드는 에러를 알라. 일단 버그를 하나 찾고 고쳤다면, 비슷한 다른 버그도 다 확실히 제거해야 한다. 왜, 어떻게 버그가 발생했는지 고민해서 다음에는 비슷한 실수를 반복하지 않도록 한다.-본문 189~190p 중에서


이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책