Rozpoczynanie nowego projektu

Go:
Rozpoczynanie nowego projektu

Jak to zrobić:

Najpierw upewnij się, że Go jest zainstalowane, uruchamiając go version w terminalu. Powinieneś zobaczyć zainstalowaną wersję Go jako wynik. Następnie, zacznijmy nowy projekt. Przejdź do swojego obszaru roboczego i uruchom:

mkdir hello-world
cd hello-world

To tworzy i przenosi cię do nowego katalogu dla twojego projektu. Teraz zainicjuj moduł:

go mod init example.com/hello-world

Zamień example.com/hello-world na ścieżkę swojego modułu. To polecenie tworzy w twoim katalogu plik go.mod, sygnalizując początek nowego modułu Go. Oto jak może wyglądać go.mod:

module example.com/hello-world

go 1.18

go.mod śledzi zależności twojego projektu. Teraz utwórz plik main.go:

touch main.go

Otwórz main.go w swoim ulubionym edytorze i dodaj następujący kod, aby wydrukować “Hello, World!”:

package main

import "fmt"

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

Aby uruchomić swój program, wróć do terminala i wykonaj:

go run main.go

Powinieneś zobaczyć:

Hello, World!

Gratulacje! Właśnie zacząłeś nowy projekt Go i uruchomiłeś swój pierwszy program w Go.

Wnikliwe spojrzenie

Inicjatywa wprowadzenia modułów jako standardu do zarządzania zależnościami w Go była znaczącą zmianą w ekosystemie Go, oficjalnie przyjętą w Go 1.11. Przed modułami, programiści Go opierali się na zmiennej środowiskowej GOPATH do zarządzania zależnościami, co było mniej intuicyjne i często prowadziło do niesławnej “piekła zależności”.

Moduły zapewniają enkapsulowany sposób zarządzania zależnościami projektu, wersjonowania i są krokiem w kierunku robienia projektów Go bardziej samowystarczalnymi i przenośnymi. Każdy moduł określa swoje zależności, które Go śledzi w pliku go.mod, upraszczając zarządzanie zależnościami w różnych środowiskach i etapach rozwoju.

Jednak warto zauważyć, że chociaż moduły Go są teraz standardem, niektóre starsze projekty mogą nadal używać GOPATH. Dla większości nowych projektów moduły oferują prostszy i skuteczniejszy system zarządzania, ale zrozumienie GOPATH może być przydatne dla utrzymania lub przyczynienia się do starszych baz kodów Go.

Jeśli chodzi o alternatywy, chociaż moduły Go są teraz de facto standardem, społeczność Go eksperymentowała w przeszłości z innymi narzędziami do zarządzania zależnościami, takimi jak dep. Jednak te zostały w dużej mierze zastąpione przez oficjalne wsparcie modułów zintegrowane z narzędziownią Go.