이 저장소는 골든래빗에서 출간한 책인 [Tucker의 Go 언어 프로그래밍]에 포함된 예제 코드를 제공합니다. 이 책을 위해 동영상 강의를 제공합니다. 제 개인 유튜브 채널인 Tucker Programming에서 볼 수 있습니다.
01장 Hello Go World
02장 변수
03장 fmt 패키지를 이용한 텍스트 입출력
04장 연산자
05장 함수
06장 상수
07장 if문
08장 switch문
09장 for문
10장 배열
11장 구조체
12장 포인터
13장 문자열
14장 패키지
15장 〈Project〉 숫자 맞추기 게임 만들기
16장 슬라이스
17장 메서드
18장 인터페이스
19장 함수 고급편
20장 자료구조
21장 에러 핸들링
22장 고루틴과 동시성 프로그래밍
23장 채널과 컨텍스트
24장 제네릭 프로그래밍
25장 〈Project〉 단어 검색 프로그램 만들기
26장 테스트와 벤치마크
27장 프로파일링으로 성능 개선하기
28장
29장 〈Project〉 RESTful API 서버 만들기
30장 〈Project〉 gnet과 gRPC으로 채팅 앱 만들기
A Go 문법 보충 수업
B 생각하는 프로그래밍
-권경모(구글 소프트웨어 엔지니어,
김호광(베타랩스 대표이사)
방현우(Urbanbase CTO)
강대명(위버스컴퍼니 소프트웨어 엔지니어)
김재훈(한양대학교 ERICA캠퍼스 학부생)
★ Must Have 시리즈 안내
★ 32만 뷰가 증명하는 GO 언어 명강사를 만나자
숫자로 보는 책의 특징
0 단계 컴퓨터 원리부터 확실히
1.16 Go 언어 최신 버전
3 단계로 익히는 Go 언어
4가지 난이도 프로젝트 구현
86개 연습문제
200여 개 예제 제공
다른 언어를 배운 적이 있는 프로그래밍 초보자께
다른 언어를 사용하는 현업 프로그래머께
현업에서 Go 언어를 사용하는 프로그래머께
Q. 해외에서 Go 언어 인기가 어느 정도인지요?
Q. Go 언어, 열심히 활용하는 기업이나 프로젝트를 알려주세요.
Q. Go 언어는 어디에 유용한가요?
Q. 마지막으로 독자께 깨알 책 자랑 부탁드립니다.
이 책은 0~3단계까지, 배경지식부터 Go 프로그래밍에 유용한 기법까지 다룹니다. 추가로 본문에서 다하지 못한 이야기는 〈Tucker 노트〉에서 더 깊고 자세히 다룹니다.
0단계 Go 언어를 배우기 전에 기초 원리를 잘 알아야 더 깊은 이해를 할 수 있습니다. 본격적으로 Go 프로그래밍 언어를 배우기 앞서 개발 환경을 구축합니다. 그후 프로그래밍 입문자와 초보자를 고려해 컴퓨터란 무엇이고, 어떻게 동작하는지 또 프로그래밍이란 무엇인지, 현대적 프로그래밍 언어가 탄생하게 된 배경은 무엇이고, Go 언어는 어떤 특징을 가지는지 살펴봅니다. 컴퓨터, 프로그램, 프로그래밍 언어의 관계를 더 잘 이해하고 더 좋은 코드를 만드는 발판이 되길 바랍니다.
1단계 가볍게 Go 입문하기 Go 언어 기본 문법을 차근차근 배웁니다. 변수, 연산자, 제어문, 함수 등 대부분 언어가 제공하는 기본 문법입니다. Go 언어의 기본 문법과 프로그래밍 방식을 알려드립니다.
2단계 고급 기법으로 Go 레벨업하기 Go 언어 고급 문법을 알아봅시다. 메서드, 인터페이스, 다양한 함수 활용 방법을 살펴봅니다. 상황에 맞게 자료구조를 선택하는 방법과 예외 상황에 대처하는 방법도 배웁니다. 고루틴, 채널, 컨텍스트를 활용한 Go 언어만의 독특한 동시성 프로그래밍도 배우게 됩니다. 마지막 장에서는 ★ 두 개 수준 프로젝트로 파일에서 원하는 단어를 찾는 프로그램을 만들어보겠습니다.
3단계 Go 프로그래밍에 유용한 기법 익히기 3단계는 어엿한 Go 언어 프로그래머로 첫발을 내딛을 수 있도록 돕는 데 목적이 있습니다. Go 언어 문법은 이미 다 배웠습니다. 문법만 익혀서는 좋은 프로그램을 만들 수 없습니다. 문법을 넘어서 Go 프로그래머로 성장해야 합니다. SOLID 객체지향 설계 원칙, 테스트, 벤치마크 방법을 익히며 좋은 프로그램을 만드는 프로그래머로 성장해봅시다. 이대로 끝나면 아쉽겠죠? 지금까지 배운 것을 바탕으로 29장에서는 웹 서버를 만듭니다. 그리고 ‘RESTful API 서버’, ‘Todo 리스트 웹 사이트 만들기’ 프로젝트를 함께 진행해보고 마무리합니다.
Tucker 노트 본문에서 미처 다루지 못한 Go 문법, 생각하는 프로그래밍, Go 언어를 Go답게 쓰는 방법을 알려드립니다. 저자 Tucker의 특별한 노트를 만나보세요. A. Go 문법 보충 수업 B. 생각하는 프로그래밍