로그인회원가입장바구니고객센터마이페이지회사소개
kangcom
전체
Home >   >   > 

The Go Programming Language

   
지은이 앨런 도노반, 브라이언 커니건   |   출판사 에이콘  |   발행일 2016년 02월 29일
 
클릭하시면 큰 도서이미지를 보실 수 있습니다.
판매가 35,000원31,500원 10%
마일리지 1% 350원
발행일 2016-02-29
ISBN 896077832X | 9788960778320
기타정보 번역서 | 400쪽 | 일반
예상출고일 1~2일 이내 (근무일기준)
배송비 무료배송
   
프로그래밍언어
종합지수 0p
   
이 책의 원서
  The Go Programming Language (Addison-Wesley Professional Computing)
Addison-Wesley Professional | Brian W. Kernighan
 

[요약 ]

Go를 배우고자 하는 모든 개발자를 위한 권위있는 『The Go Programming Language』 한국어판

이 책은 구글 Go 개발팀의 일원인 앨런 도노반과 C언어의 대가인 브라이언 커니핸이 직접 쓴 책으로, Go의 언어적 특징과 표준 라이브러리를 활용해 깔끔하고 범용적이며 효율적인 프로그램을 개발하는 데 도움을 주고자 한다. 이 책을 통해 언어의 탄생 배경부터 문법, 동시성, 패키지, 테스팅 기법까지 Go의 진면모를 알 수 있을 것이다.



[이 책의 특징]

이 책은 전체 언어와 가장 중요한 패키지들, 넓은 범위의 애플리케이션을 다루는 수백 개의 흥미롭고 실용적인 예제를 Go 코드로 작성해 제공한다. 각 장에는 이해도를 테스트하고 예제의 확장과 대안을 알아보기 위한 연습문제들도 수록되어 있다. 소스코드는 http://gopl.io/에서 자유롭게 다운로드할 수 있으며, go get 명령으로 손쉽게 반입, 빌드, 설치할 수 있다.

[ 이 책의 구성 ]

1장은 파일 읽고 쓰기, 텍스트 포매팅, 이미지 생성, 인터넷 클라이언트와 서버 간 통신 등의 일상적인 작업을 수행하는 여러 프로그램을 통해 Go의 기본 구성 요소를 설명하는 튜토리얼이다.

2장은 Go 프로그램의 구조적 요소인 선언, 변수, 새로운 타입, 패키지, 파일, 범위 등을 설명한다. 3장은 숫자, 불리언, 문자열, 상수 및 유니코드를 처리하는 방법을 설명한다. 4장은 배열, 맵, 구조체, 슬라이스 등의 간단한 타입을 모으는 조합형 타입을 설명한다. 5장은 함수, 예외 처리, panic, recover, defer문을 설명한다.

따라서 1장에서 5장까지는 대부분이 널리 쓰이는 명령형 언어에 포함되는 기본적인 내용이다. 가끔 Go의 문법과 스타일이 그 외의 언어와 다를 때가 있지만, 대부분의 개발자는 빠르게 적응할 수 있을 것이다. 나머지 장들은 메소드, 인터페이스, 동시성, 패키지, 테스트, 리플렉션(reflection) 등에 대한 Go의 독특한 접근 방식에 초점을 맞춘다.

Go는 객체지향 프로그래밍에 독특한 접근 방식을 택했다. Go에는 클래스 계층은 물론 실제로 클래스 자체가 없다. 복잡한 객체의 행동은 상속이 아닌 간단한 객체의 조합으로 이뤄진다. 메소드는 구조체뿐만 아니라 임의의 사용자 정의 타입과 연관되며, 구상 타입과 추상 타입(인터페이스) 간의 관계가 묵시적이므로 구상 타입은 설계자가 사전에 고려하지 않은 인터페이스도 충족할 수 있다. 메소드는 6장에서, 인터페이스는 7장에서 다룬다.

8장은 CSP의 아이디어에 기반을 두며 고루틴과 채널로 구현된 Go의 동시성에 대한 접근 방식을 제시한다. 9장은 공유 변수를 이용하는 좀 더 전통적인 동시성에 대해 설명한다.

10장은 라이브러리를 구성하는 메커니즘인 패키지를 설명한다. 또한 컴파일, 테스트, 벤치마크, 프로그램 포매팅, 문서화, 기타 여러 작업을 수행하는 단일 명령인 go 도구를 효과적으로 사용하는 방법도 보여준다.

11장은 눈에 띄게 가벼운 접근 방식을 통해 추상화 기반 프레임워크를 간단한 라이브러리와 도구로 대체한 Go 테스팅을 다룬다. 테스트 라이브러리는 필요시 더 복잡한 추상화 단계를 구축할 수 있는 기초를 제공한다.

12장은 프로그램이 실행 중에 스스로의 상태를 살펴볼 수 있게 하는 리플렉션에 대해 알아본다. 리플렉션은 강력한 도구지만 주의 깊게 사용해야 한다. 또한 리플렉션이 중요한 일부 Go 라이브러리를 구현하는 데 어떻게 사용됐는지를 보여줌으로써 리플렉션의 적절한 균형에 대해 설명한다. 13장은 unsafe 패키지를 사용해 Go의 타입 시스템을 우회하는 저수준 프로그래밍의 어려운 세부 사항과 저수준 프로그래밍이 적합한 경우에 대해 설명한다.## 번역 확인 필요. 끔찍한 세부 사항이 무슨 의미인지?

1장 튜토리얼
1.1 Hello, World
1.2 커맨드라인 인수
1.3 중복 줄 찾기
1.4 애니메이션 GIF
1.5 URL 반입
1.6 URL 동시 반입
1.7 웹 서버
1.8 미진한 부분

2장 프로그램 구조
2.1 이름
2.2 선언
2.3 변수
2.4 할당
2.5 타입 선언
2.6 패키지와 파일
2.7 범위

3장 기본 데이터 타입
3.1 정수
3.2 부동소수점 수
3.3 복소수
3.4 불리언
3.5 문자열
3.6 상수

4장 복합 타입
4.1 배열
4.2 슬라이스
4.3 맵
4.4 구조체
4.5 JSON
4.6 텍스트와 HTML 템플릿

5장 함수
5.1 함수 선언
5.2 재귀
5.3 다중 값 반환
5.4 오류
5.5 함수 값
5.6 익명 함수
5.7 가변 인자 함수
5.8 연기된 함수 호출
5.9 패닉
5.10 복구

6장 메소드
6.1 메소드 선언
6.2 포인터 수신자가 있는 메소드
6.3 내장 구조체를 통한 타입 조합
6.4 메소드 값과 표현식
6.5 예제: 비트 벡터 타입
6.6 캡슐화

7장 인터페이스
7.1 인터페이스 규약
7.2 인터페이스 타입
7.3 인터페이스 충족
7.4 flag.Value로 플래그 분석
7.5 인터페이스 값
7.6 sort.Interface로 정렬
7.7 http.Handler 인터페이스
7.8 error 인터페이스
7.9 예제: 표현식 평가기
7.10 타입 검증
7.11 타입 검증으로 오류 식별
7.12 인터페이스 타입 검증으로 동작 조회
7.13 타입 변환
7.14 예제: 토큰 기반 XML 디코딩
7.15 몇 마디 조언

8장 고루틴과 채널
8.1 고루틴
8.2 예제: 동시 시계 서버
8.3 예제: 동시 에코 서버
8.4 채널
8.5 병렬 루프
8.6 예제: 동시 웹 크롤러
8.7 select를 통한 다중화
8.8 예제: 동시 디렉토리 탐색
8.9 취소
8.10 예제: 채팅 서버

9장 공유 변수를 이용한 동시성
9.1 경쟁 상태
9.2 상호 배제: sync.Mutex
9.3 읽기/쓰기 뮤텍스: sync.RWMutex
9.4 메모리 동기화
9.5 게으른 초기화: sync.Once
9.6 경쟁 상태 검출
9.7 예제: 동시 넌블로킹 캐시
9.8 고루틴과 스레드

10장 패키지와 Go 도구
10.1 소개
10.2 임포트 경로
10.3 패키지 선언
10.4 Import 선언
10.5 공백 임포트
10.6 패키지 이름 짓기
10.7 Go 도구

11장 테스트
11.1 go test 도구
11.2 테스트 함수
11.3 범위
11.4 Benchmark 함수
11.5 프로파일
11.6 Example 함수

12장 리플렉션
12.1 왜 리플렉션인가?
12.2 reflect.Type과 reflect.Value
12.3 재귀 값을 출력하는 Display
12.4 예제: S- 표현식 인코딩
12.5 reflect.Value로 변수 설정
12.6 예제: S-표현식 디코딩
12.7 구조체 필드 태그 접근
12.8 타입의 메소드 표시
12.9 주의 사항

13장 저수준 프로그래밍
13.1 unsafe.Sizeof, Alignof, Offsetof
13.2 unsafe.Pointer
13.3 예제: 깊은 동등성
13.4 cgo를 통한 C코드 호출
13.5 기타 주의 사항

앨런 도노반(Alan A. A. Donovan)
뉴욕에 위치한 구글 Go 팀의 일원이다. 캠브리지와 MIT에서 컴퓨터 과학 학위를 취득했으며, 1996년부터 업계에서 개발을 하고 있다. 2005년부터 구글의 인프라 프로젝트에서 근무했으며, 독자적인 빌드 시스템인 Blaze의 공동 설계자다. Go 프로그램의 수많은 정적 분석 라이브러리와 도구를 만들었으며, 그중에는 oracle, godoc -analysis, gorename 등이 있다.

브라이언 커니건(Brin W. Kernighan)
프린스턴 대학에서 컴퓨터 과학 교수로 재직 중이다. 1969년부터 2000년까지 벨연구소 컴퓨터과학 연구센터의 일원으로 유닉스용 언어와 도구를 개발했다. 『C 언어 프로그래밍』(휴먼사이언스, 2012), 『프로그래밍 수련법』(인사이트, 2008) 등 여러 책의 공동 저자다.
등록된 서평이 없습니다.
C언어 스케치...
강환수, 이동규, 최재순
선택된 상품을 찜하실 수 있습니다. 선택된 상품을 바로구매 하실 수 있습니다.
 
전체평균(0)
회원평점   회원서평수 0
에이콘 출판사의 신간
『음성 사용자 인터페이스 디자인: VUI 디자인의 핵심 개념과 활용』
캐시 펄 저
27,000원
(10%↓+5%)
 
『자연어 처리와 컴퓨터 언어학: 파이썬으로 개발하는 자연어 처리 서비스』
바르가브 스리니바사 디지칸 저
27,000원
(10%↓+5%)
 
『메모리 덤프로 윈도우 악성코드 분석하기 - 고급 2판: WinDbg 실습 교재』
드미트리 보스토코프 저
31,500원
(10%↓+5%)
 
『앤서블 시작과 실행: 쉬운 자동화 설정 관리부터 배포 방법』
로린 혹스테인, 르네 모저 저
31,500원
(10%↓+5%)
 
『Go 동시성 프로그래밍: 개발자를 위한 도구와 테크닉』
캐서린 콕스 부데이 저
25,200원
(10%↓+5%)
 
이메일주소수집거부