Gos popularitet er steget gennem årene. Flere virksomheder anvender Go, og udviklerpuljen vokser, efterhånden som flere use cases til sprogudrulningen. Folk bruger det til at bygge programmer lige fra hurtige webapps, blockchain-løsninger og maskinlæringsværktøjer.

Udviklere elsker Go på grund af dets udtryksevne, brugervenlighed og høje sproglige ydeevne. Go har en hurtigere indlæringskurve end de fleste sprog med et hurtigt voksende økosystem af pakker og biblioteker.

Kom godt i gang med Go

Programmeringssproget Go er ikke forudinstalleret på Windows, macOS eller de fleste Linux-distros. Du skal installere Go for at køre Go-programmer. Du kan tjekke den officielle Gå til downloads side for at installere det på din maskine. Du skal installere en nyere version af Go for at få mest muligt ud af sproget siden nyere versioner har flere funktioner og opdateringer.

Når du har Go installeret, kan du arbejde med sproget, udføre Go-filer, oprette arbejdsområder og bygge projekter i Go.

Du kan oprette en Go-fil og køre Go-programmer ved hjælp af standardbiblioteket. Men hvis du vil bruge eksterne biblioteker, skal du oprette en Go-modulfil til afhængighedsstyring, versionssporing og mere.

instagram viewer

Go Modules-filen

I Go er et modul en samling af pakker i et filtræ med en go.mod fil ved roden. Denne fil definerer modulets sti, importstien og afhængighedskravene for en vellykket byggeproces.

Du kan oprette en Go-modulfil med Go mod kommandoen og i det underkommando, før du angiver stien eller mappen til projektet.

 mod init projekt-mappe

Kommandoen opretter go.mod fil. Argumentationen efter i det kommandoen er modulstien. Modulstien kan være filstien på dit værtsmiljø eller depotdomænestien.

Når du installerer eksterne pakker og afhængigheder, opdaterer go kræve erklæring i go.mod fil for at sikre, at de er inkluderet.

Du kan bruge ryddelig underkommando af mod kommando for at downloade alle afhængigheder, der kræves til dit program.

 mod ryddeligt

Kommandoen vil downloade alle manglende importer til go modules-filen.

Go Package Namespace

Hver Go-kildefil tilhører en pakke, og du kan få adgang til kode i et pakkenavneområde ved hjælp af dets identifikator.

Du kan have flere navnerum til dine pakker. Når du har oprettet en mappe, har du oprettet et nyt navneområde. Du kan få adgang til andre navnerum med en prik (.) notation.

// mappe 1 
pakke folder

funcFolder()nogen {
// noget funktionslegeme her
Vend tilbage0;
}

Her er et eksempel på adgang til et andet navneområde end et andet navneområde.


// mappe 2, fil i et andet navneområde
pakke vejviser

funcvejviser() {
// adgang til mappefunktionen fra mappens navneområde
folderFunc := mappe. Folder()
}

Det bliver du nødt til eksportere identifikatoren ved at skrive navnet med stort for at få adgang til en identifikator i et eksternt navneområde.

Hovedfunktionen

Det vigtigste funktion fungerer som indgangspunktet for Go-programmer. Du kan ikke udføre en Go-fil eller -pakke uden hovedfunktionen. Du kan have en vigtigste funktion i ethvert navneområde; dog skal du kun have én vigtigste funktion i en fil eller pakke.

Her er en enkel Hello World Program at demonstrere vigtigste fungere:

pakke vigtigste
importere "fmt"

funcvigtigste {
fmt. Println("Hej, verden!")
}

Denne kode erklærer vigtigste funktion i vigtigste pakkenavneområde. Den importerer derefter fmt pakke og bruger Udskrivln metode til at udsende en streng til konsollen.

Import af pakker i Go

Sammenlignet med mange andre sprog er det nemt at importere pakker og afhængigheder. Det importere nøgleord giver funktionalitet til import af pakker. Du kan importere pakker fra standardbiblioteket og eksterne afhængigheder med importere søgeord.

importere "fmt"

I ovenstående eksempel importerer du én pakke. Du kan importere flere pakker. Du bliver nødt til at angive pakkerne i parentes efter importere udmelding.

importere (
"fmt" // fmt til udskrivning
"log" // log til logning
"net/http" // http til webapplikationer
"encoding/json" // json til serialisering og deserialisering af strukturer til JSON
)

Tilføjelse af afgrænsningstegn i importerklæringer er ugyldig. Du kan erklære et brugerdefineret navn for import ved at angive det brugerdefinerede navn før pakkenavnet.

importere (
"net/http"
encoder "encoding/json" // alias import her
)

Her importerede du json pakke med det brugerdefinerede navn som encoder. Du skal have adgang til pakkens funktioner og typer med det brugerdefinerede navn (encoder).

Nogle pakker kræver, at du importerer andre pakker for bivirkninger. Du skal sætte en understregning foran pakkenavnet.

importere (
_ "fmt" // import af bivirkninger
"log"
)

Du kan ikke få adgang til pakker, du har importeret for bivirkninger, men det kan afhængigheder, hvis du konfigurerer dem.

Gå løb vs. Gå Byg

Du vil bruge løb og bygge kommandoer til at kompilere og udføre din Go-kode. De har lignende funktioner, og du vil bruge dem til at udføre pakker.

Det løb kommando er en kombination af kompilerings- og udførelsesinstruktioner. Det løb kommandoen udfører pakken uden at oprette nogen eksekverbare filer i arbejdsmappen. Du bliver nødt til at angive filnavnet på pakkenavnet efter løb kommando.

 køre fil.// udfører en fil
køre pakkenavn // udfører pakken

Det bygge kommando er en kompileringskommando, der kompilerer en pakke eller fil til en binær eksekverbar.

Hvis du kører bygge kommando uden nogen argumenter efter filen eller pakkenavnet, vil go generere en eksekverbar fil i din pakkes rodmappe.

 bygge hoved.// kompilerer en fil 
bygge"pakke navn" // kompilerer en pakke

Du bliver nødt til at genkompilere programmet med bygge kommando, når du ændrer en pakke.

Du kan angive en mappe som et argument, og bygge kommandoen udsender den eksekverbare i den angivne mappe.

 build fil -o "mappe"

Der er så meget du kan gøre med Go

Go-standardbiblioteket er kraftfuldt og intuitivt. Du kan hurtigt bygge moderne applikationer uden at skulle installere eksterne afhængigheder.

Siden Go's udgivelse i 2009 har udviklere og virksomheder brugt det til forskellige brugssager på en række områder. Dets succes skyldes primært, at Go giver en Python-lignende syntaks sammen med C-lignende ydeevne.