높은 생산성과 쉬운 프로그래밍을 위한 Go 인 액션
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
알림 신청하시면 원하시는 정보를
받아 보실 수 있습니다.
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.
작가정보
저자(글) 윌리엄 케네디
저자 윌리엄 케네디(William Kennedy)는 미국 플로리다 주 마이애미에 위치한 모바일, 웹 시스템 개발 전문 기업인 아르단 스튜디오의 관리 파트너이자 GoingGo.Net 블로그와 마이애미 Go 밋업의 운영자이기도 하다. 또한, 그는 교육 사업을 담당하는 아르단 랩스를 설립하고 Go 언어 교육에 집중하고 있다. 오프라인 및 구글 행아웃을 통한 온라인 콘퍼런스나 워크숍에도 자주 참여한다.
저자(글) 브라이언 케텔슨
저자 브라이언 케텔슨(Brian Ketelsen)은 XOR 데이터 익스체인지의 공동 창업자이자 CIO다. 또한, 매년 개최되는 고퍼콘의 공동 개최자인 동시에 Go 언어의 전파와 교육에 힘쓰는 커뮤니티 중심 사이트인 고퍼 아카데미의 설립자이기도 하다. 2010년부터 지금까지 실무에 Go 언어를 사용하고 있다.
저자(글) 에릭 St. 마틴
저자 에릭 St. 마틴(Erik St. Martin)은 빅 데이터 및 분석 기업인 XOR 데이터 익스체인지의 소프트웨어 개발 부문 이사다. 회사는 미국 텍사스 주 오스틴 시에 있지만, 플로리다 주 탐파 시에 거주하면서 일하고 있다. 매년 열리는 고퍼콘의 개최자이자 탐파 시 Go 밋업 그룹의 운영자로 활동 중이다. Go 언어와 커뮤니티에 지대한 관심이 있으며, 이들을 성장시키기 위한 새로운 방법을 계속 모색하고 있다.
역자 장현희는 17년째 개발자의 길을 걷고 있는 옮긴이는 지난 15년간 총 20권의 개발 관련서를 집필하거나 번역했다. 현재는 호주 시드니에 있는 ROKT에서 시니어 개발자로 근무 중이며, 국내 개발자들에게 조금이라도 도움되는 번역서를 만들기 위해 틈틈이 노력하고 있다. 앞으로도 책이라는 매개체를 통해 멀리서나마 국내 개발자들과 계속해서 소통할 계획이다.
목차
- 1장 Go와의 첫 만남 1
1.1 Go 언어로 최신 컴퓨팅 환경이 당면한 과제 해결하기 2
1.2 Hello, Go 10
1.3 요약 11
2장 Go 간단히 살펴보기 13
2.1 프로그램 아키텍처 14
2.2 main 패키지 15
2.3 Search 패키지 18
2.4 RSS 검색기 41
2.5 요약 49
3장 패키징과 내장 도구들 51
3.1 패키지 52
3.2 가져오기 54
3.3 init 57
3.4 Go 내장 도구의 활용 58
3.5 Go의 추가 개발자 도구 61
3.6 다른 Go 개발자와 협업하기 66
3.7 의존성 관리 67
3.8 요약 72
4장 배열, 슬라이스, 맵 73
4.1 배열의 내부 구조 및 원리 73
4.2 슬라이스의 내부 구조 및 원리 82
4.3 맵의 내부 구조 및 원리 101
4.4 요약 108
5장 Go의 타입 시스템 109
5.1 사용자정의 타입 110
5.2 메서드 114
5.3 타입의 본질 119
5.4 인터페이스 125
5.5 타입 임베딩 137
5.6 외부 노출 식별자와 비노출 식별자 146
5.7 요약 155
6장 동시성 157
6.1 동시성과 병렬성 158
6.2 고루틴 161
6.3 경쟁 상태 170
6.4 공유 자원 잠금 173
6.5 채널 179
6.6 요약 191
7장 동시성 패턴 193
7.1 Runner 패키지 193
7.2 풀링 203
7.3 work 패키지 216
7.4 요약 223
8장 표준 라이브러리 225
8.1 문서화와 소스 코드 226
8.2 로깅 228
8.3 인코딩/디코딩 239
8.4 입력과 출력 248
8.5 요약 257
9장 테스트와 벤치마킹 259
9.1 단위 테스트 259
9.2 예제 코드 279
9.3 벤치마킹 284
9.4 요약 289
찾아보기 291
책 속으로
Go 개발팀은 오늘날 소프트웨어 개발자들이 당면한 문제들을 훌륭하게 해결했다. 개발자들은 프로젝트를 수행할 언어를 선택하는 과정에서 개발 속도와 성능을 두고 항상 갈등해야 했다. 예를 들어, C나 C++ 같은 언어들은 빠른 수행 속도를 자랑하는 반면, Ruby나 Python 같은 언어들은 개발 기간이 짧다. Go 언어는 이 둘 사이의 균형을 잘 맞추고 있어 빠른 수행 속도를 제공하면서도 개발 기간을 단축할 수 있는 다양한 기능들을 제공한다.
_2
Go는 기품이 있으며 언어 자체의 생산성과 재미를 배가시키는 프로그래밍 요소들을 가지고 있다. 언어를 디자인한 사람들은 자신들이 필요로 했던 저수준(low-level) 프로그래밍 구조에 대한 접근을 허용하면서도 생산성을 높일 수 있는 언어를 만들어냈다. 이러한 균형의 달성은 최소화된 키워드 집합과 내장 함수, 그리고 간결한 문법 덕분에 가능했다고 볼 수 있다. 또한 Go는 매우 광범위한 표준 라이브러리를 지원한다. 이 표준 라이브러리는 프로그래머가 실제 세계의 웹 및 네트워크 기반 프로그램을 구현하는 데 필요한 모든 핵심 패키지들을 제공하고 있다.
_13
오늘날의 프로그램들은 필연적으로 데이터의 컬렉션(collection)을 읽고 저장하는 기능을 필요로 한다. 만일 데이터베이스나 파일을 사용하거나 웹에 접근한다면 송수신 데이터를 관리할 수 있는 방법이 반드시 필요하다. Go는 데이터의 컬렉션을 관리하기 위해 배열(array), 슬라이스(slice), 맵(map)의 세 가지 데이터 구조를 제공한다. 이 데이터 구조들은 언어 내에 녹아있어 표준 라이브러리 내에서도 활발하게 활용된다.
_73
Go는 정적 타입(statically typed) 프로그래밍 언어다. 즉, 컴파일러가 프로그램 내의 모든 값의
타입을 정확히 알고 있다는 뜻이다. 컴파일러가 타입 정보를 미리 알고 있으면 프로그램이 값 들을 더 안전하게 활용할 수 있다. 이를 통해 잠재적인 메모리 문제와 버그를 줄일 수 있음은 물론 컴파일러가 더 나은 코드를 생성할 수 있는 기회를 가질 수 있게 된다.
_109
프로그램은 하나의 작업을 실행하기 위한 일련의 코드를 쭉 실행한 후 종료되도록 작성하는 경우가 많다. 사실 이런 타입의 프로그램은 주로 작성 및 유지보수가 쉽기 때문에 가능한 한항상 이 방식을 선택하는 것이 옳다. 그러나 여러 작업을 동시적(concurrently)으로 실행하는 것이 훨씬 도움이 되는 경우도 있다. 데이터를 조회하기 위한 여러 개의 요청을 개별적인 소켓으로 동시에 전달받는 웹 서비스가 좋은 예다. 각각의 소켓 요청은 유일한 것이어서 다른 것들과 독립적으로 처리할 수 있다. 이런 요청을 동시적으로 실행할 수 있다면 이런 종류의 시스템의 전반적인 속도는 몰라보게 향상될 수 있을 것이다. Go는 이런 점을 염두에 두고 언어와 런타임 차원에서 동시성을 직접 지원할 수 있도록 만들어졌다.
_157
출판사 서평
애플리케이션 개발은 웹의 동시성이나 실시간 성능 같은 복잡한 시스템 프로그래밍 문제를 다루지 않더라도 여간 쉽지 않은 일이다. 개발하면서 발생하는 일반적인 문제들은 도구와 프레임워크를 이용해 해결하기도 하지만, Go는 이런 문제를 자체적으로 해결할 수 있다. 그리고 이를 통해 더욱 자연스럽고 생산적인 코드를 작성할 수 있는 경험을 제공한다. 구글에서 개발한 Go는 작고 빠르게 움직여야 하는 스타트업은 물론, 고성능 서비스를 제공해야 하는 엔터프라이즈급 회사에도 적합하다.
이 책은 자바나 루비, 파이썬, C# 혹은 C++ 등의 언어를 실무에서 능숙하게 다루는 개발자를 대상으로 한다. 다른 프로그래밍 언어에 대한 경험을 토대로 Go를 공부하거나 언어와 그 내부 동작을 깊이 있게 이해하고자 한다면 이 책이 아주 적절할 것이다.
이 책의 주요 내용
■ 언어 명세 및 구현
■ Go의 타입 시스템
■ 자료구조의 내부 구현
■ 테스트와 벤치마킹
기본정보
ISBN | 9791185890531 ( 118589053X ) | ||
---|---|---|---|
발행(출시)일자 | 2016년 06월 15일 | ||
쪽수 | 296쪽 | ||
크기 |
188 * 245
* 16
mm
/ 650 g
|
||
총권수 | 1권 | ||
원서명/저자명 | Go in Action/William Kennedy |
Klover
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
구매 후 리뷰 작성 시, e교환권 100원 적립