Go 학습 로드맵
간결한 타입과 명시적인 오류 처리를 익히고 동시성의 기초를 이해합니다.
학습 목표
파일에 저장하는 명령행 할 일 관리 프로그램를 완성합니다. 각 단계의 개념을 코드에 적용하고 완료 기준으로 이해도를 확인하세요.
전체 학습 순서
| 단계 | 주제 |
|---|---|
| 01 | 실행 환경과 기본 문법 |
| 02 | 데이터 구조와 메모리 |
| 03 | 메서드와 인터페이스 |
| 04 | 오류 처리와 입출력 |
| 05 | 동시성과 테스트 |
01. 실행 환경과 기본 문법
- 모듈 초기화
- 실행과 빌드
- 변수와 타입
- 조건문
- 반복문
- 함수
완료 기준: 모듈 단위로 프로그램을 만들고 실행 파일을 빌드할 수 있습니다.
02. 데이터 구조와 메모리
- 배열과 슬라이스
- 맵
- 구조체
- 포인터
- 값 복사와 공유
완료 기준: 슬라이스와 맵을 사용해 데이터를 관리하고 변경의 영향을 설명할 수 있습니다.
03. 메서드와 인터페이스
- 메서드
- 값·포인터 리시버
- 인터페이스
- 합성
완료 기준: 저장 기능의 계약을 인터페이스로 정의하고 구현을 교체할 수 있습니다.
04. 오류 처리와 입출력
- error 반환
- 오류 감싸기와 확인
- defer
- 파일과 JSON 처리
완료 기준: 실패 원인을 호출자에게 전달하고 사용한 자원을 정리할 수 있습니다.
05. 동시성과 테스트
- 고루틴
- 채널
- 동기화
- context를 통한 취소
- 단위 테스트와 경쟁 상태 검사
완료 기준: 작업 종료와 취소를 제어하고 공유 데이터의 경쟁 상태를 점검할 수 있습니다.
마무리 프로젝트
- 데이터를 추가·조회·수정·삭제하는 기능을 구현합니다.
- 잘못된 입력과 빈 데이터를 처리합니다.
- 핵심 로직의 성공·실패 사례를 테스트합니다.
- 실행 방법과 배운 내용을 README에 기록합니다.