Golang 튜토리얼 - 01 Go 시작하기

개요

  • Go 설치
  • Hello, World 출력
  • Go 명령어 실행
  • Go 패키지 탐색 도구 사용
  • 외부 모듈 함수 호출


준비물

  • 프로그래밍 경험 코드는 간단하지만, 함수에 대해 알고 있으면 도움이 된다.
  • 코드 편집기 어떤 텍스트 편집기를 사용해도 상관없지만, 주로 VSCode(무료), GoLand(유료) 그리고 Vim(무료)을 사용한다.
  • 명령 터미널 Go는 Linux, Mac 터미널과 Windows PowerShell, cmd에서 잘 작동한다.


Go 설치

다운로드 및 설치에서 최신 버전의 Go를 설치한다.


Hello, World 출력

1. 터미널을 열고 적당한 경로로 이동한다.

cd <적당한 경로>


2. ‘hello’라는 경로를 하나 만들고 해당 경로로 이동한다.

mkdir hello
cd hello


3. 코드에 대한 의존성 트래킹을 활성화한다.

다른 모듈에 포함된 패키지를 불러올 때, 자체 모듈을 통해 의존성을 관리한다. go.mod 파일에 의해 정의된 모듈이 패키지를 제공하는 모듈을 추적한다.

go.mod 파일을 만들어 코드에 대한 의존성 트래킹을 활성화하려면 go mod init 명령을 실행하여 코드가 포함될 모듈의 이름을 지정한다. 이름은 모듈의 모듈 경로이다.

실제 개발 시 모듈 경로는 일반적으로 소스 코드가 존재하는 저장소의 위치이다. 예를 들어, 모듈 경로는 github.com/mymodule일 수 있다. 다른 사람이 사용할 수 있도록 모듈을 게시하려는 경우 모듈 경로는 Go 도구에서 모듈을 다운로드할 수 있는 위치여야 한다. 모듈 경로로 모듈 이름을 지정하는 방법에 대한 자세한 내용은 의존성 관리를 참조하면 된다.

이 튜토리얼에서는 example/hello를 사용한다.

go mod init example/hello


4. 텍스트 편집기에서 코드를 작성할 hello.go 파일을 만든다.


5. 다음 코드를 hello.go 파일에 붙여넣고 파일을 저장한다.

package main

import "fmt"

func main() {
    fmt.Println("Hello, World!")
}

위 코드는 다음을 수행한다.

  • 기본 패키지를 선언한다.(패키지는 함수를 그룹화하는 방법이며, 동일한 경로에 있는 모든 파일로 구성된다.)
  • 콘솔 출력 및 텍스트 포맷 지정 함수가 포함된 유명한 fmt 패키지를 가져온다. 이 패키지는 Go를 설치할 때 받은 표준 라이브러리 패키지 중 하나이다.
  • 콘솔에 메시지를 출력하는 메인 함수를 구현한다. 기본 패키지를 실행할 때 기본 함수가 디폴트로 실행된다.

6. 코드를 실행한다.

go run .

go run 명령은 Go로 작업을 완료하는 데 사용할 많은 go 명령 중 하나이다. 다음 명령을 사용하여 다른 목록을 가져온다.

go help


외부 모듈 함수 호출

다른 사람이 이미 만들었을 수도 있는 코드를 찾아볼 수도 있다.

1. 외부 모듈의 함수를 이용해 출력된 메시지를 더 재밌게 만들어보자.

  • pkg.go.dev에 들어가 “quote” 패키지를 찾는다.
  • 검색 결과에서 rsc.io/qutoe 패키지를 찾아 클릭한다.(rsc.io/quote/v3가 표시되면 무시)
  • Documentation 섹션의 인덱스에서 코드에서 호출할 수 있는 함수 목록을 확인한다. Go 함수를 사용할 것이다.
  • quote 패키지는 rsc.io/quote 모듈에 포함되어 있다.

pkg.go.dev 사이트를 사용하여 코드에서 사용할 수 있는 함수가 있는 패키지의 게시된 모듈을 찾을 수 있다. 패키지는 다른 사람들이 사용할 수 있는 rsc.io/quote와 같은 모듈에 게시된다. 모듈은 시간이 지남에 따라 새 버전으로 개선되며 개선된 버전을 사용하도록 코드를 업그레이드할 수 있다.

2. Go 코드에서 rsc.io/quote 패키지를 가져오고 Go 함수에 대한 호출을 추가한다.

다음과 같이 코드를 수정한다.

package main

import "fmt"

import "rsc.io/quote"

func main() {
    fmt.Println(quote.Go())
}


3. 새 모듈 requirement 및 sum 추가

Go는 quote 모듈을 요구사항으로 추가하고 모듈 인증에 사용할 go.sum 파일을 추가한다. 자세한 내용은 Go 모듈 참조에서 모듈 인증을 참조하면 된다.

go mod tidy


4. 코드를 실행하여 호출한 함수에 의해 생성된 메시지를 확인한다.

go run .

코드에서 Go 함수를 호출하여 통신에 대한 영리한 메시지를 출력한다.

go mod tidy를 실행했을 때, 불러온 패키지를 포함하고 있는 rsc.io/quote 모듈을 찾아 다운로드한 것이다.

태그:

카테고리:

업데이트:

댓글남기기