Devin.KR

기본 · 전체 목차 공개

작고 명확한 Go 프로그램

모듈·슬라이스·맵·구조체·인터페이스·오류 값·테스트·고루틴·채널·context 를 익히고 net/http 로 작은 JSON API 를 만든다. 공공 자전거 대여소 예제.

이 책을 읽기 전에

없음(프로그래밍 경험이 조금 있으면 좋다)

공개 12/12장 · 목차 구성 2026-09-12

CONTENTS

목차

읽음 표시는 직접 선택하며 자동 완료되지 않습니다.

  1. 01
    Go 시작하기 - 모듈과 첫 프로그램

    go 설치 확인, go mod init, go run·go build, 패키지와 import, gofmt·go vet

  2. 02
    변수·상수·기본 타입 - 제로값이 있는 언어

    var·:=, 제로값, int·float64·string·bool·rune, 명시적 형 변환, const·iota

  3. 03
    제어문 - for 하나로 모든 반복

    if 짧은 문, for 세 가지 형태·range, switch(fallthrough 없음), 레이블 break

  4. 04
    함수 - 여러 값 반환과 defer

    다중 반환, 이름 붙은 반환값, 가변 인자, 함수 값·클로저, defer 실행 순서

  5. 05
    슬라이스와 맵 - 길이와 용량

    배열과 슬라이스, append 와 용량 증가, 공유되는 하위 슬라이스 함정, 맵과 존재 확인, slices·maps 패키지

  6. 06
    구조체와 메서드 - 값 리시버와 포인터 리시버

    구조체 리터럴, 임베딩, 메서드 리시버 선택 기준, 생성 함수 관례

  7. 07
    인터페이스 - 선언 없이 만족하는 약속

    암묵적 구현, 작은 인터페이스, 타입 단언·타입 switch, fmt.Stringer, nil 인터페이스 함정

  8. 08
    오류 처리 - 오류도 값이다

    error 반환 관례, fmt.Errorf %w 감싸기, errors.Is·As, 사용자 정의 오류, panic·recover 를 쓸 때

  9. 09
    패키지 나누기와 go test

    디렉터리와 패키지, 공개·비공개 이름, 표 주도 테스트, go test -cover

  10. 10
    고루틴과 채널 - 동시에 일하기

    go 문, 버퍼 없는/있는 채널, close 와 range, select, 작업자 풀

  11. 11
    sync 와 context - 기다리기·잠그기·취소하기

    WaitGroup, Mutex, 경쟁 탐지기 go run -race, context.WithTimeout·취소 전파

  12. 12
    종합 실습 - net/http 로 만드는 작은 JSON API

    라우팅(ServeMux 패턴), JSON 인코딩, 핸들러 테스트 httptest, 완성 코드는 httptest 서버로 자기 API 를 호출해 결과를 출력하고 끝난다

이 책은 Devin.KR 원고를 참조합니다. 원고의 원래 주소와 저작자 표기를 유지하며 같은 글을 다시 등록하지 않습니다. 수정된 원고는 읽기 화면에서 재검수 상태를 확인할 수 있습니다.

이 책·표지의 저작권 및 출처 관련 요청