프로그래밍 공부하기

Go 본문

Web/[Other] Language

Go

ihl 2021. 3. 12. 16:21

  go는 병렬처리가 가능하여 매우 빠르게 동작하는 언어이다. 시간이 오래 걸릴만한 동작들을 go 언어로 된 모듈로 만들어 실행시키면 효율적인 작업 처리가 될 것 같아서 조금 학습해 보려고 한다.

 

1. 다운받기

  golang.org/dl/에 가면 go의 설치파일을 다운받을 수 있다. 나의 경우 ubuntu를 사용하므로 리눅스 파일을 Download 경로에 다운받았다.

 

2. 압축 해제 및 환경변수 설정

sudo tar -C /usr/local -xzf go1.16.linux-amd64.tar.gz

  go의 설치파일의 압축을 /usr/local 위치에 풀어준다. 만약 이미 go가 설치되어 있다면 rm -rf /usr/local/go 명령을 먼저 실행하여 이전버전의 go를 제거한다.

 

export PATH=$PATH:/usr/local/go/bin

  go의 환경변수를 설정한다.

 

go version

  go의 버전을 확인하여 잘 설치 되었는지 확인한다.

 

3. 코드 관리

go env | grep GOPATH

  위 명령어로 go 코드 작업 위치를 확인한 후 해당 위치로 이동한다. go는 다른 언어처럼 아무 폴더에서 go를 쓸 수 있는 것이 아니라 환경변수에서 GOPATH로 지정된 위치에서만 작업할 수 있기 때문이다.

 

mkdir bin pkg src

  이동한 go 코드 작업 위치에서 bin, pkg, src 폴더를 생성한 후 src 위치로 이동한다.

 

cd src
mkdir github.com/

cd github.com/
mkdir imhyelim1209

  src 위치에서 github.com/ 폴더를 만든 후 그 안에 imhyelim1209 폴더를 생성한다. 그 의미는 github.com/imhyelim1209라는 곳에서 다운받은 코드들은 모두 이 곳에 저장하겠다는 의미이다. 이렇게 도메인 별로 코드를 분류하여 정리하는 것이 관리가 편하다고 한다.

 

4. 코드 실행

cd imhyelim1209
mkdir testgo

  이제 작업하고 싶은 프로젝트의 폴더를 생성하고 해당 폴더를 vscode로 연 다음 main.go라는 파일을 하나 만들어보자. 이 때 다양한 installation 알람이 뜨는데 이를 모두 설치해준다.

 

package main
func main() {
  println("go Test")
}

  만들어진 go 파일에 위와 같은 코드를 작성한 뒤 go run main.go로 코드를 실행해보고 잘 동작한다면 성공이다!

 

go env -w GO111MODULE=auto

  추가적으로 만약 Go1.16 버전을 사용하며 작업에서 export하는 모듈들을 만들어 사용하고 싶다면 현재 디렉토리나 상위 디렉토리의 패키지를 import하기 위해선 위와 같이 GO111MODULE 환경변수를 auto로 바꾸어 주어야한다.

 


노마드 코더 강의: youtu.be/fqnKJa02GK0

go 설치 공식문서: golang.org/doc/install

Comments