0 |
golang 소개 및 시작하기 |
Article |
고 언어 탄생 배경, 특징에 대해 설명하고 설치하는 방법에 대해서 알아본다 |
Introduction |
1 |
golang 기초 |
Article |
고 언어의 기본적인 데이터 타입(Numerics, String, Booleans)과 변수 선언 및 초기화 방법을 설명한다. |
Basic |
1-mission-0 |
Integer |
Mission |
미션을 통해 Integer 타입 이해해본다 |
Integer |
1-mission-1 |
Float & Complex 사용해보기 |
Mission |
미션을 통해 Float & Complex 타입 이해해본다 |
Float & Complex |
1-mission-2 |
String 사용해보기 |
Mission |
미션을 통해 String 타입 이해해본다 |
String |
1-mission-3 |
String Formatting 사용해보기 |
Mission |
미션을 통해 String Formmating 사용에 익숙해지기 |
String Format |
1-mission-4 |
Boolean 사용해보기 |
Mission |
미션을 통해 Boolean 타입 이해해본다 |
Boolean |
1-mission-5 |
Function 사용해보기 |
Mission |
미션을 통해 Function 사용에 익숙해진다 |
Function |
1-mission-6 |
Function - Swap 함수 구현하기 |
Mission |
미션을 통해 Function 호출 시 인수의 복사본이 만들어진다는 점 이해해본다 |
Swap Function |
1-mission-7 |
Struct 사용해보기 |
Mission |
미션을 통해 Struct 사용에 익숙해진다 |
Struct |
1-mission-8 |
Method 사용해보기 |
Mission |
미션을 통해 Method 사용에 익숙해진다 |
Method |
1-mission-9 |
Pointer 사용해보기 |
Mission |
미션을 통해 Pointer 이해해본다 |
Pointer |
1-mission-10 |
Pointer를 활용하여 Swap 함수 구현하기 |
Mission |
미션을 통해 Pointer 메모리 주소 참조에 대해 이해해본다 |
Swap Pointer Function |
1-mission-11 |
Closure 기능 사용해보기 |
Mission |
미션을 통해 Closure 기능 이해해본다 |
Closure |
2 |
제어 구조(조건문, 반복문, switch문) |
Article |
고 언어의 조건문(if, else), 반복문(for), 그리고 switch문과 같은 제어 구조를 통해 프로그램의 흐름을 제어하는 방법을 설명한다 |
Control Structure |
2-mission-0 |
숫자 판별 프로그램 구현하기 |
Mission |
조건문을 사용하여 숫자를 판별하는 프로그램을 직접 구현해본다 |
Number Decision Program |
2-mission-1 |
Simpe CLI(Command Line Interface) 프로그램1 |
Mission |
조건문과 반복문을 모두 활용하여 간단한 CLI 프로그램을 직접 구현해본다 |
Simple CLI1 |
2-mission-2 |
switch문을 활용하여 간단한 CLI 프로그램 구현하기 |
Mission |
switch문을 활용하여 CLI(Command Line Interface) 프로그램을 직접 구현해본다 |
Simple CLI2 |
3 |
인티페이스와 다형성 |
Article |
인터페이스의 개념과 이를 통한 다형성 개념에 대해서 알아본다 |
Interface |
3-mission-0 |
Interface를 통해 다형성 구현하기 |
인터페이스를 활용하여 다양한 타입의 객체가 동일한 메서드를 구현해보며 다형성을 이해해본다 |
Numerics |
Array |
4 |
Data Structure |
Article & Mission |
Go 언어의 주요 데이터 구조에 대해 다룬다. 배열(Array)과 슬라이스(Slice), 맵(Map), 큐(Queue), 스택(Stack), 트리(Tree) 등을 통해 데이터를 효율적으로 관리하고 사용할 수 있는 방법을 설명한다. 더 나아가 Cosmos-SDK의 상태 저장에 사용되는 IAVL 트리를 이해해본다. |
Data Structure |
4-mission-0 |
Array 사용해보기 |
Mission |
미션을 통해 Array을 직접 선언하고 초기화해보면서 이해해본다 |
Array |
4-mission-1 |
Slice 사용해보기 |
Mission |
미션을 통해 Slice을 직접 선언하고 초기화해보면서 이해해본다 |
Slice |
4-mission-2 |
Slice로 Queue 구현하기 |
Mission |
미션을 통해 Slice로 Queue을 직접 구현해보면서 이해해본다 |
Queue |
4-mission-3 |
Slice로 Stack 구현하기 |
Mission |
미션을 통해 Slice로 Stack을 직접 구현해보면서 이해해본다 |
Stack |
4-mission-4 |
Map 사용해보기 |
Mission |
미션을 통해 Map을 직접 사용해보면서 이해해본다 |
Map |
4-mission-5 |
AVL Tree 사용해보기 |
Mission |
미션을 통해 이미 구현된 AVL 트리의 일부 주요 함수를 이해하고 간단하게 트리 구조를 출력하는 함수를 구현해본다 |
AVL Tree |
4-mission-6 |
Cosmos SDK IAVL 사용해보기 |
Mission |
미션을 통해 Cosmos SDK IAVL의 기능을 직접 사용해본다 |
Cosmos SDK IAVL |
5 |
Concurreny(Opt) |
Article |
Go 언어의 동시성 프로그래밍에 대한 기초에 대해 이해해본다 |
Concurrency |
5-mission-0 |
고루틴(goroutine) 사용해보기 |
Mission |
미션을 통해 고루틴을 직접 사용해보며 이해해본다 |
Goroutine |
5-mission-1 |
송신 전용 및 수신 전용 channel 만들어보기 |
Mission |
미션을 통해 송수신 채널을 구현해보며 이해해본다 |
Send/Recv Channel |
5-mission-2 |
channel을 이용한 동시 작업 패턴 사용해보기 |
Mission |
미션을 통해 채널 작업 패턴에 대해서 이해해본다 |
Worker Pattern Channel |
5-mission-3 |
select문 사용해보기 |
Mission |
미션을 통해 select문 사용법에 대해서 알아본다 |
Select문 |
5-mission-4 |
sync 패키지 사용해보기 - WaitGroup |
Mission |
미션을 통해 sync 패키지의 WaitGroup 기능에 대해 알아본다 |
Sync - WaitGroup |
5-mission-5 |
sync 패키지 사용해보기 - Mutex |
Mission |
미션을 통해 sync 패키지의 Mutex 기능에 대해 알아본다 |
Sync - Mutex |
5-mission-6 |
클로저(closure)를 활용하여 고루틴 사용해보기 |
Mission |
미션을 통해 고루틴이 상태를 유지하거나 공유 상태를 안전하게 변경할 수 있는 방법에 대해 알아본다 |
Closure Goroutine |