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 サイトの他の関連記事を参照してください。