Head First GO

Head First

올해 3월 Head First Go 가 출간되었다. Head First는 O’REILLY 사에서 출간한 컴퓨터 관련 시리즈 도서로 다양한 책들이 있으며 많은 소프트웨어 개발자들이 한번은 봤을법한 표지로도 유명하다.

도서의 목차는 아래와 같다.

목차

서문
1장. 시작해 봅시다: 문법 기초
2장. 다음엔 어떤 코드가 실행될까요?: 조건문과 반복문
3장. 호출해 주세요: 함수
4장. 코드 묶음: 패키지
5장. 목록에서: 배열
6장. 확장 문제: 슬라이스
7장. 데이터 라벨링: 맵
8장. 저장소 만들기: 구조체
9장. 나만의 타입: 사용자 정의 타입
10장. 당신만 알고 계세요: 캡슐화와 임베딩
11장. 당신은 무엇을 할 수 있나요?: 인터페이스
12장. 다시 일어서기: 실패 복구하기
13장. 작업 공유하기: 고루틴과 채널
14장. 코드 품질 보증: 자동 테스트
15장. 요청에 응답하기: 웹 앱
16장. 패턴 따르기: HTML 템플릿
부록 A. os.OpenFile 이해하기: 파일 열기
부록 B. 못 다룬 여섯 가지 주제: 번외

이 도서도 다른 Head First 시리즈 도서와 구성이 비슷하다. 처음 Head First를 10여년 전 접했을 때는 책 구성을 보고 많이 놀랐던 기억이 있다. 일반적인 기술 서적과는 확실히 다른 Head First만의 스타일이 존재한다. 이 부분에 대해서는 호불호가 있다.

이 도서의 특이한 점은 그림이 많다. 매우 많다. 그림을 사용한 학습은 기억력에 큰 도움이 되지만 그 만큼 책이 두꺼워 질 수 있고, 책이 얇아지게되면 기술의 깊이가 얕아질 수 있다. 이 책은 580여페이지의 도서로 기술의 깊이보단 입문자를 위한 기초를 탄탄히 할 수 있는 내용으로 가득 채워져 있다. 그렇기에 입문자들에게 매우 추천하는 책이다.

또 다른 특이한 부분은 대화체를 사용한다. 서로가 나와서 대화를 하면서 문제를 알려주고 해결하는 방법 등을 제시하면서 언어의 특징을 설명한다. (이 리뷰는 도서 리뷰기에 GO에 대한 이야기는 생략한다.) 이런 설명법이 어색할 수 도 있지만 흥미를 더욱 유발시키고 즐거울 수 있다. 나는 이러한 방식의 기술서적이 처음에는 어색했지만, 지금은 다른 이들에게 추천할 수 있다.

컴퓨터 언어를 처음 공부하는 분들에게 이 책은 유용하지만, 다른 컴퓨터 언어를 깊숙히 이해하고 있는 분들에게 이 책은 너무 쉬울 수 있다. 나같은 경우에도 Head First 시리즈를 좋아하지만 빠르게 지식을 정리해서 습득해야 할 필요가 있을 땐 찾지 않는 편이다. 이 부분은 유의해서 책을 선택하면 좋을 것 같다.

마지막으로 Go 언어는 요즘 오픈소스 진영에서도 굉장히 많이 사용되고 있기 때문에, 꼭 한번 배워보길 추천한다. 언어가 매우 재밋고 입문자도 C/C++ 언어보다 쉽게 배울 수 있다.(개인적으로 python 만큼 쉽진 않아보인다. 전문가 수준까지는 다른 얘기겠지만..)