Menu
Coddy logo textTech

外部ファイル

CoddyのGOジャーニー「オブジェクト指向プログラミング」セクションの一部 — レッスン 1/107。

Goでは、同じパッケージ内の複数の.goファイルにコードを分割することができます。同じpackage宣言を共有するすべてのファイルは、お互いの関数や型に直接アクセスできます。インポートは不要です。

// 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 はインポートなしで main.go で利用可能です。これにより、コードを同じパッケージ内に保ちながら、論理的なファイルに整理することができます。

challenge icon

チャレンジ

簡単

helper.go 内に、main.go で使用される2つの関数を作成してください:

  • Add — 2つの int パラメータを受け取り、その和を返します
  • Subtract — 2つの int パラメータを受け取り、その差を返します

チートシート

同じパッケージ内であれば、コードを複数の .go ファイルに分割することができます。同じ package 宣言を共有するすべてのファイルは、インポートすることなく、お互いの関数や型に直接アクセスできます。

// 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腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

オブジェクト指向プログラミングのすべてのレッスン