De populariteit van Go is in de loop der jaren toegenomen. Meer bedrijven passen Go toe en de ontwikkelaarspool groeit naarmate er meer gebruiksscenario's voor de taaluitrol komen. Mensen gebruiken het om programma's te bouwen, variërend van snelle web-apps, blockchain-oplossingen en machine learning-tools.
Ontwikkelaars zijn dol op Go vanwege de expressiviteit, het gebruiksgemak en de hoge taalprestaties. Go heeft een snellere leercurve dan de meeste talen met een snelgroeiend ecosysteem van pakketten en bibliotheken.
Aan de slag met Go
De Go programmeertaal is niet vooraf geïnstalleerd op Windows, macOS of de meeste Linux-distributies. U moet Go installeren om Go-programma's uit te voeren. U kunt de officiële controleren Ga downloaden pagina om het op uw computer te installeren. U wilt een recente versie van Go installeren om het meeste uit de taal te halen sinds nieuwere versies hebben meer functies en updates.
Zodra je Go hebt geïnstalleerd, kun je met de taal werken, Go-bestanden uitvoeren, werkruimten maken en projecten bouwen in Go.
U kunt een Go-bestand maken en Go-programma's uitvoeren met behulp van de standaardbibliotheek. Als u echter externe bibliotheken wilt gebruiken, moet u een Go-modulebestand maken voor afhankelijkheidsbeheer, versietracking en meer.
Het Go Modules-bestand
In Go is een module een verzameling pakketten in een bestandsstructuur met een ga.mod bestand in de root. Dat bestand definieert het pad van de module, het importpad en de afhankelijkheidsvereisten voor een succesvol bouwproces.
U kunt een Go-modulebestand maken met de Go mod commando en de in het subopdracht voordat u het pad of de map voor het project opgeeft.
Gaan mod init projectmap
De opdracht maakt de ga.mod het dossier. Het argument na de in het commando is het modulepad. Het modulepad kan het bestandspad op uw hostomgeving zijn, of het repository-domeinpad.
Wanneer u externe pakketten en afhankelijkheden installeert, zal go de vereisen aangifte in de ga.mod bestand om te controleren of ze zijn opgenomen.
U kunt de netjes subcommando van de mod commando om alle afhankelijkheden die nodig zijn voor uw programma te downloaden.
Gaan mod netjes
De opdracht downloadt alle ontbrekende importen naar het go-modules-bestand.
De Go-pakketnaamruimte
Elk Go-bronbestand hoort bij een pakket en u hebt toegang tot code binnen een pakketnaamruimte met behulp van de identifier.
U kunt meerdere naamruimten voor uw pakketten hebben. Nadat u een map hebt gemaakt, hebt u een nieuwe naamruimte gemaakt. U kunt toegang krijgen tot andere naamruimten met een punt (.) notatie.
// map 1
pakket map
funcMap()elk {
// een functielichaam hier
opbrengst0;
}
Hier is een voorbeeld van toegang tot een andere naamruimte vanuit een andere naamruimte.
// map 2, bestand in andere naamruimte
pakket map
funcmap() {
// toegang tot de mapfunctie vanuit de mapnaamruimte
folderFunc := map. Map()
}
Je zal moeten exporteer de identificatie door de naam met een hoofdletter te schrijven om toegang te krijgen tot een id in een externe naamruimte.
De belangrijkste functie:
De hoofd functie dient als toegangspunt voor Go-programma's. U kunt een Go-bestand of -pakket niet uitvoeren zonder de hoofdfunctie. Je kunt een hoofd functie in elke naamruimte; u moet er echter maar één hebben hoofd functie in een bestand of pakket.
Hier is een simpele Hallo Wereld Programma om te demonstreren hoofd functie:
pakket hoofd
importeren "fmt"
funchoofd {
fmt. Println ("Hallo wereld!")
}
Deze code verklaart de hoofd functie in de hoofd pakket naamruimte. Vervolgens importeert het de fmt pakket en maakt gebruik van de Println methode om een string naar de console uit te voeren.
Pakketten importeren in Go
In vergelijking met veel andere talen is het importeren van pakketten en afhankelijkheden eenvoudig. De importeren trefwoord biedt functionaliteit voor het importeren van pakketten. U kunt pakketten importeren uit de standaardbibliotheek en externe afhankelijkheden met de importeren trefwoord.
importeren "fmt"
In het bovenstaande voorbeeld importeert u één pakket. U kunt meerdere pakketten importeren. U moet de pakketten tussen haakjes opgeven na de importeren uitspraak.
importeren (
"fmt" // fmt voor afdrukken
"logboek" // log om te loggen
"net/http" // http voor webapplicaties
"codering/json" // json voor het serialiseren en deserialiseren van structs naar JSON
)
Het toevoegen van scheidingstekens in importinstructies is ongeldig. U kunt een aangepaste naam voor importen declareren door de aangepaste naam voor de pakketnaam op te geven.
importeren (
"net/http"
encoder "encoding/json" // alias hier importeren
)
Hier heb je de. geïmporteerd json pakket met de aangepaste naam als: encoder. U moet toegang krijgen tot de functies en typen van het pakket met de aangepaste naam (encoder).
Voor sommige pakketten moet u andere pakketten importeren vanwege bijwerkingen. U moet de pakketnaam vooraf laten gaan door een onderstrepingsteken.
importeren (
_ "fmt" // bijwerkingen importeren
"logboek"
)
Je hebt geen toegang tot pakketten die je hebt geïmporteerd vanwege bijwerkingen, maar afhankelijkheden wel als je ze configureert.
Ga rennen vs. Ga bouwen
Je gebruikt de rennen en bouwen commando's om uw Go-code te compileren en uit te voeren. Ze hebben vergelijkbare functionaliteiten en u zult ze gebruiken voor het uitvoeren van pakketten.
De rennen commando is een combinatie van compilatie- en uitvoeringsinstructies. De rennen commando voert het pakket uit zonder uitvoerbare bestanden in de werkmap te maken. U moet de bestandsnaam van de pakketnaam opgeven na de rennen opdracht.
Gaan bestand uitvoeren.Gaan// voert een bestand uit
Gaan voer pakketnaam uit // voert het pakket uit
De bouwen opdracht is een compilatieopdracht die een pakket of bestand compileert tot een binair uitvoerbaar bestand.
Als u de bouwen commando zonder enige argumenten achter de bestands- of pakketnaam, zal go een uitvoerbaar bestand genereren in de hoofdmap van uw pakket.
Gaan hoofd bouwen.Gaan// compileert een bestand
Gaan bouwen "pakket naam" // compileert een pakket
U moet het programma opnieuw compileren met de bouwen commando wanneer u een pakket wijzigt.
U kunt een map als argument specificeren, en de bouwen commando zal het uitvoerbare bestand in de opgegeven map uitvoeren.
Gaan build-bestand -o "directory"
Er is zoveel dat je kunt doen met Go
De Go-standaardbibliotheek is krachtig en intuïtief. U kunt snel moderne applicaties bouwen zonder dat u externe afhankelijkheden hoeft te installeren.
Sinds de release van Go in 2009 hebben ontwikkelaars en bedrijven het voor verschillende gebruiksscenario's op verschillende gebieden gebruikt. Het succes is vooral te danken aan het feit dat Go naast C-achtige prestaties een Python-achtige syntaxis biedt.