[go] Go 언어에서 모듈 내 함수 사용하기

Go 언어에서 모듈은 하나의 폴더와 그 폴더 내에 있는 파일들로 이루어집니다. 모듈에는 함수들이 정의되어 있고 이들 함수들은 패키지 내에서 사용됩니다. 이번에는 Go 언어에서 모듈을 만들고 그 모듈 내에서 함수를 어떻게 사용하는지 알아보겠습니다.

모듈 만들기

먼저, 새로운 폴더를 만들어 그 안에 모듈을 위한 파일을 만들어야 합니다. 해당 폴더는 module_example라고 가정해봅시다.

$ mkdir module_example
$ cd module_example

모듈을 위한 파일은 .go 확장자를 가집니다. 예를 들어, math_utils.go로 파일을 만든다고 가정해 봅시다. 이 파일에는 다양한 수학 연산을 수행하는 함수를 정의할 것입니다.

함수 정의하기

이제 math_utils.go 파일 내에서 수학 함수를 정의합니다. 다음은 간단한 두 개의 함수를 정의하는 예시입니다.

package module_example

import "fmt"

func Add(a, b int) int {
    return a + b
}

func Subtract(a, b int) int {
    return a - b
}

위의 코드에서 package 문은 해당 파일이 어떤 패키지에 속하는지를 나타냅니다. import "fmt"은 표준 라이브러리에서 fmt 패키지를 가져온다는 것을 의미합니다.

함수 사용하기

이제 모듈을 사용하는 다른 파일에서 이 함수들을 사용할 수 있습니다. 다음과 같이 main.go 파일을 만들어 함수를 호출하는 예시를 살펴봅시다.

package main

import (
    "fmt"
    "module_example"
)

func main() {
    sum := module_example.Add(3, 5)
    difference := module_example.Subtract(10, 4)
    
    fmt.Println("Sum:", sum)
    fmt.Println("Difference:", difference)
}

위에서 import "module_example"은 모듈을 가져오는 것을 의미합니다.

이제 main.go 파일을 실행하면 결과를 확인할 수 있을 것입니다.

결론

이렇듯, Go 언어에서 모듈을 만들고, 모듈 내에 함수를 정의하고, 다른 파일에서 해당 함수를 사용하는 방법을 알아보았습니다. 이러한 구조를 활용하여 복잡한 프로젝트를 모듈 단위로 구성할 수 있습니다.