🔥 Go 언어의 함수

238자
4분

함수는 0개 이상의 인수를 받는 코드 블록입니다. 함수를 정의할 때는 함수 이름과 함께 매개변수의 이름과 타입을 명시해야 합니다 아래 예제에서 add 함수는 int 타입의 매개변수 xy를 받고 있습니다.

func add(x int, y int) int {
    return x + y
}
 
go

Go에서는 변수 이름 뒤에 타입을 명시하는 것이 특징입니다. 이는 Go의 독특한 문법 중 하나인데요, 자세한 내용은 Go의 선언 구문을 참고하면 좋을 것 같습니다.

함수를 호출할 때는 정의된 매개변수의 순서와 타입에 맞게 인수를 전달해야 합니다. 아래는 add 함수를 호출하는 예시 코드입니다.

package main
 
import "fmt"
 
func add(x int, y int) int {
    return x + y
}
 
func main() {
    result := add(42, 13)
    fmt.Println("42 + 13 =", result) // "42 + 13 = 55"를 출력해요.
}
 
go

위 코드에서 main 함수는 add 함수를 호출하면서 4213을 인수로 전달하고 있습니다. add 함수는 두 인수를 더한 결과를 반환하죠. 반환된 값은 result 변수에 저장되고, fmt.Println을 통해 출력됩니다.

함수를 사용하면 코드를 모듈화하고 재사용성을 높일 수 있어요. 또한 복잡한 로직을 함수로 추상화하여 코드의 가독성을 향상시킬 수 있죠. 함수는 프로그램을 구성하는 기본 단위 중 하나이므로, 함수를 잘 활용하는 것이 중요합니다.

함수의 매개변수와 반환값의 타입을 명확히 정의하는 것도 중요한데요, 이를 통해 함수의 인터페이스를 명확히 하고 타입 안정성을 높일 수 있거든요. Go의 강력한 타입 시스템은 컴파일 시점에서 많은 오류를 잡아낼 수 있도록 도와준답니다.

함수를 작성할 때는 가능한 한 작고 단순하게 유지하는 것이 좋아요. 함수가 너무 길어지거나 복잡해지면 이해하기 어려워지고 유지보수가 힘들어지니까요. 필요하다면 함수를 더 작은 함수로 쪼개는 것도 좋은 방법입니다.