ホームページ >バックエンド開発 >Golang >Go でパッケージを作成する方法

Go でパッケージを作成する方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-05 12:07:02776ブラウズ

再利用を目的として、パッケージはプログラムにインポートして使用できるため、Go コードを管理する良いスタート地点となります。

まず簡単なメイン ファイルを作成しましょう


package main

import "fmt"

func main() {
   fmt.Println("hello world!")
}


これは、 go run main.go を実行すると hello world 文字列を出力する単純な hello world プログラムです。

次に、最初にモジュールを作成してパッケージを開始しましょう。一般的には git リポジトリを使用しますが、リポジトリにプッシュする計画はありません。この例では、独自の Github リポジトリを使用し、パッケージ名として mygopackage を使用します。


git mod init github.com/didikz/mygopackage


次に、サブディレクトリを作成します。たとえば、モデルを使用し、その中に user.go を作成します。構造は次のようになります

How To Create Package in Go

user.go 内で、後で main.go にインポートできる構造体とレシーバーを単純に作成します。また、現在のディレクトリ名に続くパッケージ名をモデルとして設定します


package models

type User struct {
    Id        int
    FirstName string
    LastName  string
    Address   string
}

func (user *User) GetName() string {
    return user.FirstName + " " + user.LastName
}


main.go に戻り、パッケージをインポートして、定義された構造体を使用してみましょう。前に開始したモジュール名をパッケージ名とともに使用します。


import "github.com/didikz/mygopackage/models"


パッケージのユーザー モデルを使用するには、次のように記述できます


var user models.User
user.Id = 1
user.FirstName = "Didik"
user.LastName = "Tri Susanto"
user.Address = "Malang"

// or alternatively
user := models.User{Id: 1, FirstName: "Didik", LastName: "Tri Susanto", Address: "Malang"}

fmt.Println(user.GetName())


すべて準備完了です。次に、 go run main.go を実行すると、 Didik Tri Susanto

が出力されるはずです。

簡単ですよね?

最終的な main.go ファイルは次のようになります


package main

import (
    "fmt"

    "github.com/didikz/mygopackage/models"
)

func main() {
    user := models.User{Id: 1, FirstName: "Didik", LastName: "Tri Susanto", Address: "Malang"}
    fmt.Println(user.GetName())
}


これでコーディングは完了です!

以上がGo でパッケージを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。