ホームページ > バックエンド開発 > Golang > Go では相対インポートを使用する必要がありますか?

Go では相対インポートを使用する必要がありますか?

Patricia Arquette
リリース: 2024-12-21 08:41:10
オリジナル
247 人が閲覧しました

Should I Use Relative Imports in Go?

Go での相対インポート: ウォークスルー

Go では相対インポートが可能であり、同じ親ディレクトリ内からパッケージをインポートできます。ただし、このアプローチはあいまいさを招く可能性があり、推奨されるコード構成の実践に反するため、推奨されません。

代わりに、絶対パスまたは完全修飾パッケージ名を使用してパッケージをインポートすることをお勧めします。方法は次のとおりです:

絶対パスの使用

Go パッケージを $GOPATH/src などの共通のルート ディレクトリに配置します。次に、次のような絶対パスを使用して、このルート ディレクトリ内からパッケージをインポートできます。

import "github.com/user/my-project/pkg/utils"
ログイン後にコピー

完全修飾パッケージ名の使用

完全修飾パッケージ名を使用して、同じプロジェクト内の異なるディレクトリからパッケージをインポートします:

import (
    "github.com/user/my-project"
    "github.com/user/my-project/pkg/utils"
)
ログイン後にコピー

ベスト実践

Go コーディング スタイル ガイドに従って、各パッケージには一意のインポート パスが必要です。プロジェクト外のパッケージをインポートする場合は絶対パスを使用し、同じプロジェクト内のパッケージをインポートする場合は完全修飾インポート パスを使用することをお勧めします。これにより、明確さが確保され、インポートのあいまいさが回避されます。

結論

相対インポートは Go では技術的に可能ですが、潜在的な曖昧さとサポートの欠如のため、使用すべきではありません。一般的なコード編成の実践。代わりに、パッケージのインポートには絶対または完全修飾パッケージ名を使用するという推奨アプローチを採用してください。

以上がGo では相対インポートを使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート