이번 포스팅에서는 golang의 Hello world에 관해서 알아보겠습니다

 

package main // 1. Package Definition

import "fmt" // 2. Package import

func main() {// 3. Method definition
    fmt.Println("Hello, World.")
}

1. Package definition

  • 해당 소스파일이 속하는 package를 나타냅니다
    • main package는 독립적으로 실행할 프로그램으로 작성 시 package명을 main으로 설정합니다

2. Package import

  • fmt 라는 데이터의 I/O를 위한 함수들이 들어있는 패키지를 import 합니다
    • fmt package를 제외하고 표준 라이브러리에는 100개 이상의 패키지가 존재한다고 합니다
  • 패키지 사용시 문법은 import "[package name]" 으로 적습니다. 꺽쇠, 중괄호, 대괄호 다 필요 없구요! 따옴표 사이에 이름만 적어주시면 됩니다. (이 부분은 C에서 넘어오신 분이면 헷갈리실 것 같습니다 보통 import 하실 때 표준라이브러리가 아닌 파일을 import 할때 사용하는 방식이고 표준라이브러리를 import할 경우 꺽쇠를 사용하니까요 ㅎㅎ)

3. Method definition

  • 함수 선언에는 func 키워드를 붙여 함수를 선언 및 정의합니다. 
  • 여기서는 main package 에서 main함수를 선언 및 정의하여 독립적으로 구동가능하게끔 코딩되었습니다
  • 내용은 fmt package의 내부 method인 Println을 사용해 Hello, world. 를 출력하는 것 입니다. 

 

helloworld에서 문법 및 주의사항!

문장이 한줄에 두개이상 나오는 경우 외에는 문장끝에 세미콜론을 붙이지 않습니다.

func main() {
	
    // 두 문장이 한 줄에 있기 때문에 구분하기 위해 세미콜론을 붙였습니다. 
    // 두 번째 문장은 뒤에 더이상 내용이 없기 때문에 세미콜론을 붙히지 않습니다. 
    fmt.Println("Hello, 세계"); fmt.Println("Hello, World")
}

 

함수 여는 중괄호가 func 키워드와 같은 줄에 있지 않으면 Syntax Error 발생

// Syntax Error 발생! 중괄호( { ) 는 반드시 func키워드가 오는 줄에 위치해야 합니다 
func main() 
{
    fmt.Println("Hello, 세계")
}

// 옳은 예제
func main(){
   fmt.Println("Hello, 세계")
}

 

실행!

위의 hello world 예제 소스를 helloworld.go 파일로 저장해 준 뒤 , 해당 파일이 있는 곳에서 아래와 같은 명령어로 컴파일 해줍니다. 

 

go build helloworld.go

 

컴파일이 완료 되게 되면, 리눅스는 helloworld, 윈도우는 helloworld.exe라는 바이너리가 생성됩니다.

 

해당 바이너리 혹은 실행파일을 실행하게 되면 helloworld가 출력됩니다! 

 

helloworld 빌드 및 실행

 

 

 

'Programming > golang' 카테고리의 다른 글

golang이란?  (0) 2021.01.03

+ Recent posts