>백엔드 개발 >Golang >Go에서 상대 가져오기를 사용해야 하나요?

Go에서 상대 가져오기를 사용해야 하나요?

Patricia Arquette
Patricia Arquette원래의
2024-12-21 08:41:10278검색

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.