Menu
Coddy logo textTech

외부 파일

Coddy GO 여정의 객체 지향 프로그래밍 섹션에 포함된 레슨 — 107개 중 1번째.

Go에서는 동일한 패키지 내에서 여러 .go 파일로 코드를 분할할 수 있습니다. 동일한 package 선언을 공유하는 모든 파일은 서로의 함수와 타입에 직접 접근할 수 있습니다 — 별도의 import가 필요하지 않습니다.

// helper.go
package main

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

동일한 패키지의 다른 파일에서 함수 사용하기

// main.go
package main

import "fmt"

func main() {
    result := Add(3, 5)
    fmt.Println(result) // 출력: 8
}

두 파일 모두 package main을 선언하므로, Add는 별도의 import 없이 main.go에서 사용할 수 있습니다. 이를 통해 코드를 동일한 패키지에 유지하면서 논리적인 파일들로 구성할 수 있습니다.

challenge icon

챌린지

쉬움

main.go에서 사용하는 두 개의 함수를 helper.go에 작성하세요:

  • Add — 두 개의 int 매개변수를 받아 그 합을 반환합니다
  • Subtract — 두 개의 int 매개변수를 받아 그 차를 반환합니다

치트 시트

동일한 패키지 내에서 코드를 여러 개의 .go 파일로 나눌 수 있습니다. 동일한 package 선언을 공유하는 모든 파일은 임포트(import) 없이도 서로의 함수와 타입에 직접 접근할 수 있습니다.

// helper.go
package main

func Add(a, b int) int {
    return a + b
}
// main.go
package main

import "fmt"

func main() {
    result := Add(3, 5)
    fmt.Println(result) // 출력: 8
}

두 파일 모두 package main을 선언하므로, 한 파일에 정의된 함수를 별도의 임포트 문 없이 다른 파일에서 사용할 수 있습니다.

직접 해보기

package main

import "fmt"

func main() {
    var a, b int
    fmt.Scan(&a, &b)

    fmt.Printf("Sum: %d\n", Add(a, b))
    fmt.Printf("Difference: %d\n", Subtract(a, b))
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

객체 지향 프로그래밍의 모든 레슨