Golang은 뛰어난 동시성 성능, 간단한 구문 및 가독성으로 인기가 있는 효율적이고 간결하며 안전한 프로그래밍 언어입니다. Golang에서 패키지는 코드를 구성하는 기본 단위이며, 각 패키지에는 여러 개의 파일이 포함될 수 있습니다.
이 글에서는 패키지 이름, 가져오기 경로, 가시성, 버전 제어 및 문서 주석과 같은 중요한 개념을 포함하여 Golang 패키지를 설정하는 방법을 소개합니다.
- 패키지 이름
Golang에서는 모든 파일이 패키지에 속해야 합니다. Golang 패키지는 .go 접미사가 붙은 하나 이상의 파일로 구성됩니다. 패키지 이름은 고유해야 하며 디렉터리 이름과 일치해야 합니다.
예:
hello라는 디렉터리에 다음 코드를 작성했다고 가정합니다.
package main import "fmt" func main() { fmt.Println("Hello, World!") }
디렉터리에서 터미널을 열고 다음 명령을 실행합니다.
go run .
Hello, World!가 출력됩니다. 이 예에서는 패키지의 디렉터리 이름이 hello이고 해당 패키지가 다른 패키지에 속하지 않기 때문에 패키지 이름 main을 사용했습니다.
- 가져오기 경로
Golang에서는 import 키워드를 사용하여 하나 이상의 패키지를 가져옵니다. 가져오기 경로는 상대 경로 또는 절대 경로일 수 있습니다.
상대 경로:
src/hello 디렉터리에 다음 코드를 작성했다고 가정합니다.
package main import "./utils" func main() { utils.PrintMessage("Hello") }
디렉터리에서 터미널을 열고 다음 명령을 실행합니다.
go run .
Hello가 출력됩니다. 이 예에서는 상대 경로를 사용하여 utils라는 패키지를 가져옵니다.
절대 경로:
$GOPATH/src/example.com/hello 디렉터리에 다음 코드를 작성한다고 가정합니다.
package main import "example.com/utils" func main() { utils.PrintMessage("Hello") }
디렉토리에서 터미널을 열고 다음 명령을 실행합니다.
go run .
Hello가 출력됩니다. 이 예에서는 절대 경로를 사용하여 utils라는 패키지를 가져왔습니다. example.com은 $GOPATH/src/example.com 디렉터리에 매핑되는 가상 도메인 이름입니다.
- Visibility
Golang에서는 변수, 상수, 함수, 구조체와 같은 식별자의 가시성이 다릅니다. 식별자의 가시성은 식별자가 존재하는 패키지에 따라 다릅니다.
패키지에서 식별자는 공개 또는 비공개일 수 있습니다. 식별자는 해당 식별자가 표시된 패키지 내에서만 볼 수 있습니다.
대문자로 시작하는 모든 식별자는 공개되며 다른 패키지에서 사용할 수 있습니다. 소문자로 시작하는 모든 식별자는 비공개이며 해당 패키지 내에서만 사용할 수 있습니다.
예를 들어 utils라는 패키지에는 다음 코드가 포함될 수 있습니다.
package utils import "fmt" const Pi = 3.14159 func add(x int, y int) int { return x + y } func PrintMessage(message string) { fmt.Println(message) }
이 패키지를 다른 패키지에서 사용하는 경우 공개 식별자에만 액세스할 수 있습니다.
package main import ( "example.com/utils" "fmt" ) func main() { fmt.Println(utils.Pi) utils.PrintMessage("Hello") }
디렉토리에서 터미널을 열고 다음 명령을 실행합니다.
go run .
는 3.14159와 Hello를 출력합니다.
- Version Control
Golang에서는 버전 관리를 위해 go.mod 파일을 사용합니다. go.mod 파일은 현재 모듈의 이름, 버전 정보 및 종속성 정보를 정의합니다.
hello 프로젝트에서 utils라는 타사 패키지를 사용한다고 가정해 보겠습니다. 다음 명령을 사용하여 이를 종속성 목록에 추가할 수 있습니다.
go get example.com/utils@v1.0.0
이 명령은 타사 패키지 버전 v1.0.0을 다운로드합니다. utils를 사용하여 종속성 목록에 추가합니다. go.mod 파일에 다음 콘텐츠가 추가됩니다.
module example.com/hello go 1.16 require example.com/utils v1.0.0
코드에서 타사 패키지를 사용하는 경우 해당 패키지 이름을 직접 가져올 수 있습니다. 예:
package main import ( "example.com/utils" "fmt" ) func main() { fmt.Println(utils.Pi) utils.PrintMessage("Hello") }
- Documentation comments
In Golang , 문서 주석 사용 문서를 생성하고 코드 가독성을 향상시킬 수 있습니다. 문서 주석은 // 또는 / /로 시작하고 식별자 앞에 옵니다. godoc 도구를 사용하여 문서를 생성하면 문서로 구문 분석됩니다.
예를 들어 다음은 문서 주석이 포함된 함수의 예입니다.
package utils // add 函数计算两个整数的和。 func add(x int, y int) int { return x + y }
godoc 도구를 사용하여 문서를 생성하면 다음이 표시됩니다.
FUNCTIONS func add(x int, y int) int add 函数计算两个整数的和。
Summary
이 문서에서는 Golang 패키지의 기본 개념을 소개합니다. 패키지 이름, 가져오기 경로, 가시성, 버전 제어 및 문서 설명 등을 포함한 설정 이러한 개념은 Golang을 사용하여 코드를 구성하기 위한 기본 지식입니다. 이러한 개념을 익히면 Golang 코드가 더욱 표준화되고 유지 관리 및 확장이 쉬워집니다.
위 내용은 Golang 패키지 설정의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

이 기사에서는 GO의 패키지 가져 오기 메커니즘을 설명합니다. 명명 된 수입 (예 : 가져 오기 & quot; fmt & quot;) 및 빈 가져 오기 (예 : import _ & quot; fmt & quot;). 명명 된 가져 오기는 패키지 내용을 액세스 할 수있게하고 빈 수입은 t 만 실행합니다.

이 기사에서는 MySQL 쿼리 결과를 GO 구조 슬라이스로 효율적으로 변환합니다. 수동 구문 분석을 피하고 최적의 성능을 위해 데이터베이스/SQL의 스캔 방법을 사용하는 것을 강조합니다. DB 태그 및 Robus를 사용한 구조물 필드 매핑에 대한 모범 사례

이 기사에서는 웹 애플리케이션에서 페이지 간 데이터 전송에 대한 Beego의 NewFlash () 기능을 설명합니다. NewFlash ()를 사용하여 컨트롤러간에 임시 메시지 (성공, 오류, 경고)를 표시하여 세션 메커니즘을 활용하는 데 중점을 둡니다. 한계

이 기사에서는 GO의 제네릭에 대한 사용자 정의 유형 제약 조건을 살펴 봅니다. 인터페이스가 일반 함수에 대한 최소 유형 요구 사항을 정의하여 유형 안전 및 코드 재사성을 향상시키는 방법에 대해 자세히 설명합니다. 이 기사는 또한 한계와 모범 사례에 대해 설명합니다

이 기사는 단위 테스트를 위해 이동 중에 모의와 스터브를 만드는 것을 보여줍니다. 인터페이스 사용을 강조하고 모의 구현의 예를 제공하며 모의 집중 유지 및 어설 션 라이브러리 사용과 같은 모범 사례에 대해 설명합니다. 기사

이 기사는 OS.WriteFile (작은 파일에 적합)과 OS.OpenFile 및 Buffered Writes (큰 파일에 최적)를 비교하여 효율적인 파일 쓰기를 자세히 설명합니다. 강력한 오류 처리, 연기 사용 및 특정 오류 확인을 강조합니다.

이 기사는 GO에서 단위 테스트 작성, 모범 사례, 조롱 기술 및 효율적인 테스트 관리를위한 도구를 다루는 것에 대해 논의합니다.

이 기사는 추적 도구를 사용하여 GO 응용 프로그램 실행 흐름을 분석합니다. 수동 및 자동 계측 기술, Jaeger, Zipkin 및 OpenTelemetry와 같은 도구 비교 및 효과적인 데이터 시각화를 강조합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

드림위버 CS6
시각적 웹 개발 도구

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기
