- 책 또는 웹사이트의 내용을 복제하여 다른 곳에 게시하는 것을 금지합니다.
- 책 또는 웹사이트의 내용을 발췌, 요약하여 강의 자료, 발표 자료, 블로그 포스팅 등으로 만드는 것을 금지합니다.
"가장 빨리 만나는 Go 언어: 문법, 라이브러리, 프로젝트로 배우는 Go 언어!"가 출간되었습니다. 그리고 출간과 동시에 원고도 함께 공개합니다.
이번 책에서는 Go 언어의 기본 문법부터 라이브러리, 실전 예제까지 준비했습니다. 각 기능별로 다양한 예제 코드를 보여주고, 올바른 사용법과 잘못된 사용법을 구분하여 설명하였습니다. 그래서 예제 코드만 읽어도 Go 언어를 손쉽게 익힐 수 있도록 구성하였습니다.
책에서 설명하는 주요 주제는 다음과 같습니다.
- 기본 문법 및 주의사항
- 각 자료형별 특징과 주의사항
- 배열과 슬라이스
- 맵
- 함수와 클로저
- 익명 함수
- 지연 호출
- 패닉과 복구
- 포인터
- 구조체
- 인터페이스와 덕 타이핑
- 고루틴
- 채널 사용법과 주의사항
- 리플렉션
- 동적함수 생성
- 패키지 및 문서화
- 입출력 함수 사용법
- 고급 문자열 조작
- 정규표현식
- 파일 처리 및 입출력 인터페이스
- JSON 문서 처리 방법
- 압축, 암호화, 정렬
- 기본 컨테이너 사용법
- TCP 서버, RPC 서버, HTTP 서버
- 명령줄 옵션
- 에러 처리 및 에러 타입
- 단위 테스트
- C 언어 연동
특히 Go 언어의 가장 핵심적인 기능인 고루틴, 채널, 인터페이스의 기본 문법부터 알아보고, 실전 예제에서 문제가 발생하는 사례와 요구사항을 고루틴, 채널, 인터페이스를 사용하여 해결해봅니다. 특히 채널의 활용 방법에 대해 궁금한 분들에게 큰 도움이 될 것입니다.
- 웹 크롤러 작성하기: 웹사이트의 HTML 문서를 파싱하여 가져오는 방법을 소개하고, 대량으로 처리했을 때 발생하는 문제를 고루틴과 채널을 활용한 파이프라인으로 해결해봅니다. 그리고 인터페이스를 사용하여 웹 크롤러가 다양한 웹페이지를 처리할 수 있도록 확장하는 방법을 설명합니다.
- 채팅 서버 작성하기: 고루틴과 채널을 사용하여 서버의 채팅방을 구현하고, HTML과 JavaSciprt로 웹페이지를 작성한 뒤 socket.io로 사용자와 통신하는 방법을 설명합니다.
새로운 언어를 배우는 일 자체가 부담스러운 분들도 많을 것입니다. 하지만 Go 언어는 기존 언어들이 부족했던 점을 보완했기 때문에 좀더 편리하고, 손쉽게 프로그래밍이 가능합니다. Go 언어는 충분히 배워볼 가치가 있는 언어이며 여러분들의 프로그래밍 능력에 날개를 달아주리라 생각합니다.
그리고 가급적이면 책을 많이 구입해주셨으면 좋겠습니다. 저자에게는 책을 구입해주는 것이 가장 큰 도움이 됩니다. 감사합니다.
(출판사의 결정에 의해 "실전 예제: 웹 크롤러 작성하기", "채팅 서버 작성하기" 부분은 공개하지 않게 되었습니다. 배타적전송권은 출판사의 권한인 관계로... 실전 예제의 소스는 GitHub에 모두 공개되어 있으니 언제든지 보고 활용하시면 됩니다)
책 구입
전자책 구입
목차
- Unit 1. Go 언어란?
- Unit 2. 설치하기
- Unit 3. 기본 디렉터리 설정하기
- Unit 4. 통합 개발 환경 사용하기
- Unit 5. Hello, world!로 시작하기
- Unit 6. 기본 문법 알아보기
- Unit 7. 변수 사용하기
- Unit 8. 숫자 사용하기
- Unit 9. 문자열 사용하기
- Unit 10. 불 사용하기
- Unit 11. 상수 사용하기
- Unit 12. 열거형 사용하기
- 핵심 정리
- Unit 13. 연산자 알아보기
- Unit 14. 패키지 사용하기
- Unit 15. if 조건문 사용하기
- Unit 16. if 조건문 안에서 함수 사용하기
- Unit 17. for 반복문 사용하기
- Unit 18. goto 사용하기
- Unit 19. switch 분기문 사용하기
- Unit 20. 간단한 예제로 문법 익숙해지기
- 핵심 정리
- Unit 21. 배열 사용하기
- Unit 22. 슬라이스 사용하기
- Unit 23. 맵 사용하기
- 핵심 정리
- Unit 24. 함수 사용하기
- Unit 25. 클로저 사용하기
- Unit 26. 지연 호출 사용하기
- Unit 27. 패닉과 복구 사용하기
- 핵심 정리
- Unit 28. 포인터 사용하기
- Unit 29. 구조체 사용하기
- Unit 30. 구조체에 메서드 연결하기
- Unit 31. 구조체 임베딩 사용하기
- Unit 32. 인터페이스 사용하기
- 핵심 정리
- Unit 33. 고루틴 사용하기
- Unit 34. 채널 사용하기
- Unit 35. 동기화 객체 사용하기
- 핵심 정리
- Unit 36. 리플렉션 사용하기
- Unit 37. 동적으로 함수 생성하기
- Unit 38. 인터넷 소스 저장소의 패키지 사용하기
- Unit 39. 패키지 만들기
- Unit 40. 문서화하기
- 핵심 정리
- Unit 41. 출력 함수 사용하기
- Unit 42. 입력 함수 사용하기
- Unit 43. 문자열 입출력 함수 사용하기
- Unit 44. 파일 입출력 함수 사용하기
- 핵심 정리
- Unit 45. 유니코드와 UTF-8 함수 사용하기
- Unit 46. 문자열 처리하기
- Unit 47. 문자열 변환 함수 사용하기
- Unit 48. 정규표현식 사용하기
- 핵심 정리
- Unit 49. 파일 처리하기
- Unit 50. 입출력 인터페이스 사용하기
- Unit 51. JSON 문서 사용하기
- 핵심 정리
- Unit 52. 압축 사용하기
- Unit 53. 암호화 사용하기
- Unit 54. 정렬 활용하기
- Unit 55. 컨테이너 사용하기
- 핵심 정리
- Unit 56. TCP 프로토콜 사용하기
- Unit 57. RPC 프로토콜 사용하기
- Unit 58. HTTP 서버 사용하기
- 핵심 정리
- Unit 59. 명령줄 옵션 사용하기
- Unit 60. 에러 처리하기
- Unit 61. 단위 테스트 사용하기
- Unit 62. C 언어 연동하기
- Unit 63. C 언어에서 Go 언어 함수 사용하기
- Unit 64. C 언어 배열과 Go 언어 슬라이스 사용하기
- Unit 65. C 언어 컴파일 옵션 사용하기
- 핵심 정리
- Unit 66. 실전 예제: 웹 크롤러 작성하기
- Unit 67. 실전 예제: 채팅 서버 작성하기
- 핵심 정리
예제 소스
저작권 정보
- 가장 빨리 만나는 Go 언어(이하 '책')의 저작권은 이재홍에게 있습니다.
- 책의 출판권 및 배타적발행권과 전자책의 배타적전송권은 (주)도서출판 길벗에게 있습니다.
- 책의 내용을 복제하여 블로그, 웹사이트 등에 게시할 수 없습니다.
- 링크 및 SNS 공유는 허용합니다.
- 책의 내용을 변경할 수 없습니다.
- 책의 내용을 상업적으로 사용할 수 없습니다.
- 책의 내용을 어떠한 형태로든 재배포할 수 없습니다.
저작권 안내
이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.- 블로그, 게시판 등에 퍼가는 것을 금지합니다.
- 비공개 포스트에 퍼가는 것을 금지합니다.
- 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
- 링크 및 SNS 공유는 허용합니다.