책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 프로그래밍 언어 기타
· ISBN : 9791185890531
· 쪽수 : 320쪽
· 출판일 : 2016-06-15
책 소개
목차
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 언어는 이 둘 사이의 균형을 잘 맞추고 있어 빠른 수행 속도를 제공하면서도 개발 기간을 단축할 수 있는 다양한 기능들을 제공한다.
Go는 기품이 있으며 언어 자체의 생산성과 재미를 배가시키는 프로그래밍 요소들을 가지고 있다. 언어를 디자인한 사람들은 자신들이 필요로 했던 저수준(low-level) 프로그래밍 구조에 대한 접근을 허용하면서도 생산성을 높일 수 있는 언어를 만들어냈다. 이러한 균형의 달성은 최소화된 키워드 집합과 내장 함수, 그리고 간결한 문법 덕분에 가능했다고 볼 수 있다. 또한 Go는 매우 광범위한 표준 라이브러리를 지원한다. 이 표준 라이브러리는 프로그래머가 실제 세계의 웹 및 네트워크 기반 프로그램을 구현하는 데 필요한 모든 핵심 패키지들을 제공하고 있다.
오늘날의 프로그램들은 필연적으로 데이터의 컬렉션(collection)을 읽고 저장하는 기능을 필요로 한다. 만일 데이터베이스나 파일을 사용하거나 웹에 접근한다면 송수신 데이터를 관리할 수 있는 방법이 반드시 필요하다. Go는 데이터의 컬렉션을 관리하기 위해 배열(array), 슬라이스(slice), 맵(map)의 세 가지 데이터 구조를 제공한다. 이 데이터 구조들은 언어 내에 녹아있어 표준 라이브러리 내에서도 활발하게 활용된다.