Een van de factoren die bijdragen aan de populariteit van Go is de toolset die de productiviteit van ontwikkelaars ondersteunt.

De Gaan command heeft veel subcommando's en opties om met je go-broncode te werken. Hiermee kunt u programma's bouwen en uitvoeren, afhankelijkheden beheren en meer.

Een overzicht krijgen van Go-opdrachten en configuratie

U kunt de lijst met beschikbare Go-commando's bekijken met de helpen opdracht:

Gaan helpen 

Zonder verdere argumenten geeft dit commando een lijst van alle commando's, met een beschrijving van wat elke commando doet. Het geeft ook onderwerpen weer die aanvullende hulppagina's zijn die niet rechtstreeks naar opdrachten verwijzen:

U kunt de helpen commando met een ander Go-commando of onderwerp om een ​​overzicht te zien van wat het commando doet:

Gaan help testen

U kunt de env opdracht om uw Go-omgevingsvariabelen te bekijken:

Gaan env

U kunt Go-omgevingsvariabelen gebruiken om de Go-runtime samen met andere belangrijke instellingen opnieuw te configureren.

instagram viewer

U kunt toegang krijgen tot een specifieke omgevingsvariabele door de variabelenaam op te geven na de env opdracht. Om bijvoorbeeld de huidige waarde van de. af te drukken GOPATH variabele:

Gaan env GOPATH

GOPATH is de hoofdmap van een Go-werkruimte en andere Go-werkruimten verwijzen naar de GOPATH. Het instellen van de GOPATH-omgeving is een vereiste voor het gebruik van sommige Go-pakketten.

Standaard is de GOPATH ingesteld op: $HUIS/gaan of %USERPROFILE%\go afhankelijk van uw besturingssysteem. U kunt de GOPATH wijzigen door deze toe te voegen aan het shell-configuratiebestand.

export GOPATH=/vol/Gaan/path

De opdracht verandert de GOPATH in het opgegeven pad.

Pakketten installeren en bouwen in Go

U moet externe afhankelijkheden installeren en beheren terwijl u werken met Go.

U kunt de krijgen commando om afhankelijkheden van uw pakketten te downloaden. U moet de bronlocatie opgeven als argument voor de krijgen opdracht:

Gaan ga naar gorm.io/gorm
Gaan download github.com/spf13/cobra

Deze commando's installeren het populaire GORM ORM-pakket voor: SQL-databases en het Cobra-pakket voor het bouwen van CLI's. U kunt het pakket in uw programma importeren door hun bronpad op te geven:

importeren (
"gorm.io/gorm"
"github.com/spf13/cobra"
)

Go biedt een bouwen commando om uw programma's te bouwen. De opdracht build compileert pakketten in binaire uitvoerbare bestanden:

Gaan bouwen 
Gaan bouwen "pakket naam"

De bovenstaande opdracht compileert uw pakket tot een uitvoerbaar bestand in uw werkmap.

U kunt een pad specificeren met de bouwen commando om het uitvoerbare bestand op te slaan in een opgegeven map.

Gaan bouw "uw mappad hier"

U kunt de installeren commando om Go-modules te compileren en te installeren. Zoals de bouwen opdracht, installeren bouwt uw programma. Maar het voegt ook een uitvoerbaar pakket toe aan uw Go-binaire bestanden in uw $GOPATH/bin installatiemap.

Gaan installeren

Het install-commando installeert de pakketten in uw werkdirectory zonder extra argumenten. U kunt een optionele resourcelocatie opgeven om externe afhankelijkheden te installeren.

Gaan installeer golang.org/x/tools/gopls@latest

Deze opdracht installeert het opgegeven Go-pakket en u kunt het pakket uitvoeren als een opdrachtregelprogramma.

Afhankelijkheden beheren in Go

Opdrachten voor afhankelijkheidsbeheer zijn enkele van de meest voorkomende opdrachten die u met elke taal zult gebruiken. U moet de afhankelijkheden van uw toepassing downloaden, bijwerken en bekijken tijdens uw ontwikkelingsfase.

De mod command biedt toegang tot bewerkingen op Go-modules en afhankelijkheidsbeheer.

Afhankelijk van uw bewerking heeft u een extra subcommando nodig met het mod-commando.

De in het subcommando initialiseert een Go-modulebestand in de huidige werkdirectory:

Gaan mod init

Bij het uitvoeren van de opdracht, vindt u a ga.mod bestand in uw werkmap met een lijst van de afhankelijkheden van uw app.

U kunt de netjes subopdracht om ontbrekende modules toe te voegen en ongebruikte modules te verwijderen:

Gaan mod netjes

Deze opdracht is handig wanneer u Go-bestanden hebt en u de afhankelijkheden naar uw pakket moet downloaden.

De grafiek subopdracht retourneert een lijst met de vereisten van een module:

Gaan mod grafiek

Dit commando is handig om een ​​overzicht van je afhankelijkheden op te halen.

Mogelijk moet u om verschillende redenen de pakketten en modules in uw huidige werkruimte controleren. De lijst commando geeft een overzicht van alle pakketten en modules in een gespecificeerd formaat.

Voer deze opdracht uit om alle pakketten en modules in een werkruimte weer te geven.

Gaan lijst -m allemaal

De opdracht vermeldt ook directe en indirecte afhankelijkheden in de werkdirectory.

Ga opdrachten testen

Testen is een ander belangrijk aspect van Go-ontwikkeling. De testen command automatiseert testpakketten die zijn genoemd naar hun importpaden en geeft een samenvatting van de testresultaten weer.

over het runnen van de testen commando, controleert de Go-compiler op Go-testbestanden, voert de tests uit en voert de resultaten uit. De typische naamgevingsconventie voor Go-testbestanden is het gebruik van a _testen achtervoegsel:

raak iets_test aan.Gaan

Met deze opdracht wordt een Go-testbestand gemaakt op Unix-gebaseerde systemen. U kunt doorgaan met het schrijven van uw Go-tests en deze uitvoeren met de testen opdracht.

U hebt niet per se extra opdrachten of argumenten nodig om uw Go-test uit te voeren.

Gaan testen

Zonder aanvullende parameters is de testen commando voert testresultaten in deze vorm uit.

De eerste kolom is de status van de test, de tweede is het pakket en de derde is de testduur.

De. toevoegen -v flag retourneert een uitgebreide uitvoer van de testresultaten:

Gaan test -v

De -v vlag retourneert de status van elke testfunctie samen met de resultaten van het uitvoeren van de testen commando zonder de vlag.

U kunt de testdekking van uw pakket berekenen met de --omslag vlag.

Gaan testen --bedekken

De --omslag flag retourneert het percentage code dat de tests in uw pakket dekken.

U kunt een optionele directoryparameter toevoegen vóór de --omslag vlag om toegang te krijgen tot de testdekking in een specifieke map.

Gaan test "directory" --cover

Opdrachtregeltoepassingen kunnen bepaalde taken veel sneller maken, met name repetitieve taken. Ze hebben ook de neiging om lichter te zijn omdat ze geen complexere grafische bewerkingen met zich meebrengen.

Een van de beoogde use-cases van Go is het bouwen van performante interactieve commandoregelapplicaties. Veel populaire CLI-apps, van Docker tot Hugo, zijn gebouwd in Go.

Go biedt een vlaggen pakket voor het bouwen van interactieve CLI-tools zoals de Go CLI in de standaardbibliotheek. U kunt externe pakketten zoals Cobra, Viper en vele anderen in het ecosysteem van Go gebruiken om snelle, interactieve opdrachtregeltoepassingen in Go te bouwen.