Minimal Go 프로그램 이해하기

Minimal Go 프로그램 이해하기

바둑의 인기는 수년에 걸쳐 높아졌습니다. 더 많은 회사에서 Go를 채택하고 있으며 언어 롤아웃에 대한 사용 사례가 늘어남에 따라 개발자 풀이 성장하고 있습니다. 사람들은 이를 사용하여 빠른 웹 앱, 블록체인 솔루션 및 기계 학습 도구에 이르는 프로그램을 구축합니다.



MAKEUSEOF 오늘의 비디오

개발자들은 Go의 표현력, 사용 용이성, 높은 언어 성능 때문에 Go를 좋아합니다. Go는 빠르게 성장하는 패키지 및 라이브러리 에코시스템을 통해 대부분의 언어보다 학습 곡선이 더 빠릅니다.





Go 시작하기

Go 프로그래밍 언어 Windows, macOS 또는 대부분의 Linux 배포판에는 사전 설치되어 있지 않습니다. Go 프로그램을 실행하려면 Go를 설치해야 합니다. 공식적으로 확인할 수 있습니다 다운로드 이동 페이지를 클릭하여 컴퓨터에 설치합니다. 언어를 최대한 활용하려면 최신 버전의 Go를 설치해야 합니다. 최신 버전에는 더 많은 기능이 있습니다. 및 업데이트.





Go가 설치되면 Go에서 언어로 작업하고, Go 파일을 실행하고, 작업 공간을 만들고, 프로젝트를 빌드할 수 있습니다.

표준 라이브러리를 사용하여 Go 파일을 만들고 Go 프로그램을 실행할 수 있습니다. 그러나 외부 라이브러리를 사용하려면 종속성 관리, 버전 추적 등을 위해 Go 모듈 파일을 만들어야 합니다.



Go 모듈 파일

Go에서 모듈은 파일 트리에 있는 패키지 모음입니다. go.mod 루트에 있는 파일. 해당 파일은 모듈의 경로, 가져오기 경로 및 성공적인 빌드 프로세스에 대한 종속성 요구 사항을 정의합니다.

  go 모듈 go.mod 파일 개요

Go를 사용하여 Go 모듈 파일을 만들 수 있습니다. 에 맞서 명령과 프로젝트의 경로 또는 디렉토리를 지정하기 전에 하위 명령을 사용하십시오.





go mod init project-directory 

명령은 다음을 생성합니다. go.mod 파일. 이후의 주장 명령은 모듈 경로입니다. 모듈 경로는 호스트 환경의 파일 경로이거나 저장소 도메인 경로일 수 있습니다.

외부 패키지 및 종속성을 설치하면 go에서 업데이트합니다. 필요하다 선언 go.mod 파일이 포함되어 있는지 확인합니다.





당신은 사용할 수 있습니다 깔끔한 하위 명령 에 맞서 프로그램에 필요한 모든 종속성을 다운로드하는 명령입니다.

go mod tidy 

이 명령은 누락된 모든 가져오기를 go 모듈 파일로 다운로드합니다.

누가 Google 문서에 액세스할 수 있는지 확인하는 방법

Go 패키지 네임스페이스

모든 Go 소스 파일은 패키지에 속하며 해당 식별자를 사용하여 패키지 네임스페이스 내의 코드에 액세스할 수 있습니다.

패키지에 대해 여러 네임스페이스를 가질 수 있습니다. 폴더를 만든 후에는 새 네임스페이스를 만든 것입니다. 점(.) 표기법을 사용하여 다른 네임스페이스에 액세스할 수 있습니다.

// folder 1  
package folder

func Folder() any {
// some function body here
return 0;
}

다음은 다른 네임스페이스에서 다른 네임스페이스에 액세스하는 예입니다.

 
// folder 2, file in different namespace
package directory

func directory() {
// accessing the Folder function from the folder namespace
folderFunc := folder.Folder()
}

당신은해야 할거야 식별자 내보내기 외부 네임스페이스의 식별자에 액세스하기 위해 이름을 대문자로 표시합니다.

주요 기능

그만큼 기본 기능은 Go 프로그램의 진입점 역할을 합니다. main 함수 없이는 Go 파일이나 패키지를 실행할 수 없습니다. 당신은 가질 수 있습니다 기본 모든 네임스페이스의 기능; 단, 하나만 있어야 합니다. 기본 파일 또는 패키지의 기능.

여기 간단한 헬로월드 프로그램 보여주기 위해 기본 기능:

package main 
import "fmt"

func main {
fmt.Println("Hello, World!")
}

이 코드는 다음을 선언합니다. 기본 기능 기본 패키지 네임스페이스 그런 다음 가져옵니다. fmt 패키지 및 사용 Println 콘솔에 문자열을 출력하는 메소드.

Go에서 패키지 가져오기

다른 많은 언어와 비교하여 패키지 및 종속성을 가져오는 것은 쉽습니다. 그만큼 수입 키워드는 패키지를 가져오기 위한 기능을 제공합니다. 다음을 사용하여 표준 라이브러리 및 외부 종속성에서 패키지를 가져올 수 있습니다. 수입 예어.

import "fmt" 

위의 예에서는 하나의 패키지를 가져오고 있습니다. 여러 패키지를 가져올 수 있습니다. 뒤에 괄호 안에 패키지를 지정해야 합니다. 수입 성명.

import ( 
"fmt" // fmt for printing
"log" // log for logging
"net/http" // http for web applications
"encoding/json" // json for serializing and deserializing structs to JSON
)

import 문에 구분 기호를 추가하는 것은 유효하지 않습니다. 패키지 이름 앞에 사용자 지정 이름을 지정하여 가져오기에 대한 사용자 지정 이름을 선언할 수 있습니다.

import ( 
"net/http"
encoder "encoding/json" // alias import here
)

여기에서 수입한 json 사용자 정의 이름을 가진 패키지 인코더 . 사용자 정의 이름(인코더)을 사용하여 패키지의 기능 및 유형에 액세스해야 합니다.

일부 패키지는 부작용을 위해 다른 패키지를 가져와야 합니다. 패키지 이름 앞에 밑줄을 추가해야 합니다.

import ( 
_ "fmt" // side effects import
"log"
)

부작용을 위해 가져온 패키지에 액세스할 수 없지만 구성하는 경우 종속성은 액세스할 수 있습니다.

Go Run vs. Go Build

당신은 사용할 것입니다 운영 그리고 짓다 Go 코드를 컴파일하고 실행하는 명령. 비슷한 기능을 가지고 있으며 패키지를 실행하는 데 사용할 것입니다.

그만큼 운영 명령은 컴파일 및 실행 명령의 조합입니다. 그만큼 운영 명령은 작업 디렉토리에 실행 파일을 생성하지 않고 패키지를 실행합니다. 패키지 이름 뒤에 파일 이름을 지정해야 합니다. 운영 명령.

go run file.go // executes a file 
go run packagename // executes the package

그만큼 짓다 command는 패키지 또는 파일을 바이너리 실행 파일로 컴파일하는 컴파일 명령입니다.

실행하면 짓다 파일 또는 패키지 이름 뒤에 인수 없이 명령을 실행하면 go는 패키지의 루트 디렉터리에 실행 파일을 생성합니다.

go build main.go // compiles a file  
go build "package name" // compiles a package

다음을 사용하여 프로그램을 다시 컴파일해야 합니다. 짓다 패키지를 변경할 때의 명령.

디렉토리를 인수로 지정할 수 있으며 짓다 명령은 지정된 디렉토리의 실행 파일을 출력합니다.

go build file -o "directory" 

Go로 할 수 있는 일은 무궁무진합니다

Go 표준 라이브러리는 강력하고 직관적입니다. 외부 종속성을 설치할 필요 없이 최신 애플리케이션을 빠르게 구축할 수 있습니다.

2009년 Go가 출시된 이후로 개발자와 기업들은 다양한 분야에서 다양한 사용 사례에 Go를 사용하고 있습니다. 그것의 성공은 주로 Go가 C와 같은 성능과 함께 Python과 같은 구문을 제공하기 때문입니다.