BOOKSEEK BOOK NOTES
Tucker의 Go 언어 프로그래밍(2판)
Go의 기본 문법을 서버 예제와 연결하고 싶은 독자를 위한 2판입니다. 인터페이스와 고루틴, 테스트에서 HTTP·gRPC 서버까지 다루는 범위를 살피며, 기존 개발 경험과 학습 목표에 맞춰 읽을 부분을 고르는 방법을 안내합니다.
책의 기본 정보
- 출판사
- 골든래빗
- 출간일
- 2024-08-01
- 분량
- 736쪽
- ISBN
- 9791191905809
책의 내용과 읽을 거리
『Tucker의 Go 언어 프로그래밍(2판)』은 문법을 배운 뒤 서버 코드로 옮겨 가고 싶은 독자가 살펴볼 만한 책입니다. 변수와 함수, 구조체와 포인터, 슬라이스와 인터페이스에서 시작해 동시성, 테스트와 성능 확인, 여러 서버 예제로 범위를 넓힙니다. 모든 프로그래밍 개념을 처음 접하는 독자보다는 기본적인 코딩 경험을 바탕으로 Go를 익히려는 독자가 학습 방향을 잡기 좋습니다.
Go를 다른 언어의 문법으로 곧바로 바꾸어 이해하려 하면 표현의 차이만 남을 수 있습니다. 구조체와 메서드, 인터페이스를 읽을 때는 데이터를 묶는 방법과 사용할 수 있는 동작의 약속을 구분해 보세요. 책의 예제 하나를 고른 뒤 함수에 무엇을 전달하고 결과로 무엇을 받는지 적는 활동을 권합니다. 포인터가 등장하는 부분에서는 값 자체를 다루는지 값을 가리키는지 함께 표시하면 좋습니다.
슬라이스와 맵처럼 여러 값을 다루는 범위는 실제 데이터를 처리하는 코드로 이어집니다. 처음에는 선언 방법을 익히되, 이후에는 크기와 내용이 달라지는 상황에서 프로그램이 무엇을 기대하는지 질문해 보세요. 같은 결과를 얻는 코드라도 어떤 자료를 저장하고 어떤 순서로 사용하는지에 따라 이해해야 할 지점이 다릅니다. 문법 단원을 독립적으로 끝내기보다 서버 예제의 데이터 처리와 연결하는 읽기가 가능합니다.
고루틴과 채널, 컨텍스트는 동시에 진행되는 작업과 작업의 수명을 생각하게 하는 부분입니다. 동시에 실행한다고 적었다는 사실만으로 프로그램의 흐름을 설명할 수 있는 것은 아닙니다. 어느 작업이 결과를 기다리는지, 종료를 알리는 신호는 어디에서 오는지 그림으로 정리해 보세요. 복잡한 서비스로 곧바로 확장하기보다 책의 작은 예제에서 실행 관계를 먼저 확인하는 편이 좋습니다.
2판에는 제네릭과 함께 HTTP, Gin, gnet, gRPC 등 서버 개발을 살펴보는 범위가 들어 있습니다. 이름이 여러 개 나온다고 모든 도구를 한꺼번에 익혀야 한다는 뜻은 아닙니다. 자신이 이해하려는 요청과 응답의 흐름을 먼저 정하고 관련 예제를 골라 보세요. 문법이 같은 언어로 작성되어도 서버 구성 방식은 다를 수 있으므로 각 예제의 역할을 비교하는 것이 학습의 핵심입니다.
테스트와 벤치마크, 프로파일링은 코드가 돌아간다는 확인에서 한 걸음 더 나아가는 범위입니다. 먼저 기대하는 결과를 명시하고, 성능을 논하려면 무엇을 측정했는지 구분해 보세요. 책을 활용할 때는 작은 함수의 입력 두 가지와 기대 결과를 작성한 뒤 테스트로 옮기는 연습이 좋습니다. 단일 측정 결과를 서비스 전체의 속도로 확대해 해석하지 않는 태도도 함께 필요합니다.
이 책은 Go 1.22를 반영한 2판으로 확인했습니다. 출판사에 표시된 인쇄본 발행일은 2024년 8월 1일이며, 일부 판매처의 날짜와 차이가 있어 해당 기준을 따릅니다. 여기서 다루는 도구 이름과 버전은 책의 범위를 설명하기 위한 정보이지 현재 지원 상태를 뜻하지 않습니다. 먼저 언어와 서버 코드의 구조를 배우고 의존성 설치와 배포 환경은 사용 시점의 공식 안내와 대조해 주세요.
이 책에서 공부할 수 있는 내용
구조체·인터페이스·슬라이스를 이용한 자료 표현, 고루틴·채널·컨텍스트를 통한 동시 작업의 구성을 공부할 수 있습니다. 테스트·벤치마크·프로파일링과 HTTP 및 gRPC 서버 예제도 다룹니다. 활용 질문은 요청 하나가 들어왔을 때 데이터가 어느 함수를 지나고 어디에서 결과를 기다리는지 설명할 수 있는가입니다.
설명 방식에서 눈여겨볼 특징
- 문법에서 서버로: Go의 자료 표현을 익힌 뒤 여러 서버 예제로 사용 범위를 넓힙니다.
- 동시 작업의 이해: 고루틴·채널·컨텍스트의 역할을 함께 비교합니다.
- 2판의 추가 범위: 제네릭과 서버 관련 내용을 포함한 판본을 구분해서 소개합니다.
- 검증과 측정: 테스트뿐 아니라 벤치마크와 프로파일링도 살펴봅니다.
- 목적에 따른 예제 선택: HTTP·Gin·gnet·gRPC를 한꺼번에 따라 하기보다 비교 대상으로 활용할 수 있습니다.
이런 독자에게 권합니다
다른 언어로 작은 프로그램을 작성해 보았고 Go로 서버 코드까지 읽고 싶은 독자에게 권합니다. 코딩 자체가 처음이라면 기초 개념에서 충분히 시간을 두세요. 여러 서버 도구를 다룬다는 이유만으로 운영 환경을 바로 설계할 수 있다고 기대하지 않는 편이 좋습니다.
이 책에서 주로 다루는 내용
- Go 문법과 자료 표현
- 동시성·테스트·벤치마크
- 서버 실습과 2판의 추가 기능
작가 소개
공봉식은 Tucker라는 이름으로 프로그래밍 교육 콘텐츠를 제작해 온 개발자입니다. 출판사 소개에서 여러 게임 회사의 서버 개발 경험과 Tucker Programming 채널 운영 이력을 확인할 수 있습니다.