Starter et nytt prosjekt

Go:
Starter et nytt prosjekt

Hvordan:

Først, sørg for at du har Go installert ved å kjøre go version i terminalen din. Du bør se versjonen av Go du har installert som utdata. Deretter, la oss starte et nytt prosjekt. Naviger til ditt arbeidsområde og kjør:

mkdir hello-world
cd hello-world

Dette oppretter og flytter deg inn i en ny mappe for prosjektet ditt. Nå, initialiser modulen:

go mod init example.com/hello-world

Erstatt example.com/hello-world med din modulbane. Denne kommandoen lager en go.mod-fil i mappen din, som signaliserer starten på en ny Go-modul. Slik kan go.mod se ut:

module example.com/hello-world

go 1.18

go.mod spor prosjektets avhengigheter. Nå, opprett en main.go-fil:

touch main.go

Åpne main.go i din favorittredigerer og legg til følgende kode for å skrive ut “Hello, World!”:

package main

import "fmt"

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

For å kjøre programmet ditt, naviger tilbake til terminalen og utfør:

go run main.go

Du bør se:

Hello, World!

Gratulerer! Du har nettopp startet et nytt Go-prosjekt og kjørt ditt første Go-program.

Dypdykk

Initiativet til å innføre moduler som standarden for avhengighetsstyring i Go var et betydelig skifte i Go-økosystemet, offisielt vedtatt i Go 1.11. Før moduler, stolte Go-utviklere på GOPATH-miljøvariabelen for å håndtere avhengigheter, noe som var mindre intuitivt og ofte ledet til den beryktede “avhengighetshelvete.”

Moduler tilbyr en innesluttet måte å håndtere prosjektavhengigheter, versjonering på, og er et skritt mot å gjøre Go-prosjekter mer selvforsynte og bærbare. Hver modul spesifiserer sine avhengigheter som Go sporer i go.mod-filen, noe som forenkler håndteringen av avhengigheter på tvers av ulike miljøer og utviklingsstadier.

Det er imidlertid verdt å merke seg at selv om Go-moduler nå er standarden, kan noen eldre prosjekter fortsatt bruke GOPATH. For de fleste nye prosjekter tilbyr moduler et mer greit og effektivt styringssystem, men å forstå GOPATH kan være nyttig for å vedlikeholde eller bidra til eldre Go-kodebaser.

Når det gjelder alternativer, selv om Go-moduler nå er de facto standarden, har Go-samfunnet eksperimentert med andre avhengighetsstyringsverktøy som dep i fortiden. Disse har imidlertid stort sett blitt erstattet av den offisielle modulstøtten integrert i Go-verktøykjeden.