Razumijevanje minimalnog Go programa

Razumijevanje minimalnog Go programa

Popularnost Goa porasla je tijekom godina. Sve više tvrtki usvaja Go, a grupa razvojnih programera raste kako se pojavljuje sve više slučajeva upotrebe jezika. Ljudi ga koriste za izradu programa u rasponu od brzih web-aplikacija, blockchain rješenja i alata za strojno učenje.





MAKEUSEOF VIDEO DANA

Razvojni programeri vole Go zbog njegove izražajnosti, jednostavnosti korištenja i visokih jezičnih performansi. Go ima bržu krivulju učenja od većine jezika s brzorastućim ekosustavom paketa i biblioteka.





Početak rada s Go

Go programski jezik nije unaprijed instaliran na Windows, macOS ili većinu distribucija Linuxa. Za pokretanje Go programa morat ćete instalirati Go. Možete provjeriti službeno Idi na preuzimanja stranici da biste ga instalirali na svoj stroj. Htjet ćete instalirati noviju verziju Goa kako biste od tada jezik iskoristili na najbolji način novije verzije imaju više mogućnosti i ažuriranja.





Nakon što instalirate Go, možete raditi s jezikom, izvršavati Go datoteke, stvarati radne prostore i graditi projekte u Gou.

besplatno slušati glazbu na mreži bez preuzimanja

Možete stvoriti Go datoteku i pokrenuti Go programe koristeći standardnu ​​biblioteku. Međutim, ako želite koristiti vanjske biblioteke, morat ćete stvoriti datoteku Go modula za upravljanje ovisnostima, praćenje verzija i više.



Datoteka Go Modules

U Go-u, modul je zbirka paketa u stablu datoteka s a go.mod datoteku u korijenu. Ta datoteka definira stazu modula, stazu uvoza i zahtjeve ovisnosti za uspješan proces izgradnje.

  pregled go modula datoteke go.mod

Možete stvoriti datoteku Go modula s Go protiv naredba i toplina podnaredbu prije navođenja staze ili direktorija za projekt.





go mod init project-directory 

Naredba stvara go.mod datoteka. Argument nakon toplina naredba je staza modula. Put modula može biti put datoteke u vašem host okruženju ili put domene repozitorija.

Kada instalirate vanjske pakete i ovisnosti, go će ažurirati zahtijevati deklaracija u go.mod da biste bili sigurni da su uključeni.





Možete koristiti uredan, cist podzapovjedništvo na protiv naredba za preuzimanje svih ovisnosti potrebnih za vaš program.

go mod tidy 

Naredba će preuzeti sve uvoze koji nedostaju u datoteku go modula.

Prostor imena paketa Go

Svaka Go izvorna datoteka pripada paketu i možete pristupiti kodu unutar prostora imena paketa koristeći njegov identifikator.

Možete imati više imenskih prostora za svoje pakete. Nakon što stvorite mapu, stvorili ste novi prostor naziva. Drugim imenskim prostorima možete pristupiti s točkom (.) zapisom.

// folder 1  
package folder

func Folder() any {
// some function body here
return 0;
}

Evo primjera pristupa drugom prostoru imena iz drugog prostora imena.

 
// folder 2, file in different namespace
package directory

func directory() {
// accessing the Folder function from the folder namespace
folderFunc := folder.Folder()
}

Morat ćeš izvesti identifikator pisanjem imena velikim slovima za pristup identifikatoru u vanjskom imenskom prostoru.

Glavna funkcija

The glavni funkcija služi kao ulazna točka za Go programe. Ne možete pokrenuti Go datoteku ili paket bez glavne funkcije. Možete imati glavni funkcionirati u bilo kojem imenskom prostoru; međutim, morate imati samo jedan glavni funkcija u datoteci ili paketu.

Evo jednostavnog Program Hello World demonstrirati glavni funkcija:

package main 
import "fmt"

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

Ovaj kod izjavljuje glavni funkcija u glavni imenski prostor paketa. Zatim uvozi fmt paket i koristi Println metoda za izlaz niza na konzolu.

Uvoz paketa u Go

U usporedbi s mnogim drugim jezicima, uvoz paketa i ovisnosti je jednostavan. The uvoz ključna riječ pruža funkcionalnost za uvoz paketa. Možete uvesti pakete iz standardne biblioteke i vanjskih ovisnosti s uvoz ključna riječ.

import "fmt" 

U gornjem primjeru uvozite jedan paket. Možete uvesti više paketa. Morat ćete navesti pakete u zagradama nakon uvoz izjava.

import ( 
"fmt" // fmt for printing
"log" // log for logging
"net/http" // http for web applications
"encoding/json" // json for serializing and deserializing structs to JSON
)

Dodavanje bilo kakvih graničnika u izjave uvoza nije važeće. Možete deklarirati prilagođeni naziv za uvoz tako da navedete prilagođeni naziv prije naziva paketa.

import ( 
"net/http"
encoder "encoding/json" // alias import here
)

Evo, uvezli ste json paket s prilagođenim imenom kao koder . Morat ćete pristupiti funkcijama i vrstama paketa s prilagođenim nazivom (koder).

Neki paketi zahtijevaju uvoz drugih paketa zbog nuspojava. Ispred naziva paketa morat ćete dodati podvlaku.

import ( 
_ "fmt" // side effects import
"log"
)

Ne možete pristupiti paketima koje ste uvezli zbog nuspojava, ali ovisnosti mogu ako ih konfigurirate.

Go Run vs Go Build

Vi ćete koristiti trčanje i izgraditi naredbe za kompajliranje i izvršavanje vašeg Go koda. Imaju slične funkcije i koristit ćete ih za izvršavanje paketa.

The trčanje naredba je kombinacija naredbi za kompilaciju i izvođenje. The trčanje naredba izvršava paket bez stvaranja izvršnih datoteka u radnom direktoriju. Morat ćete navesti naziv datoteke naziva paketa nakon trčanje naredba.

go run file.go // executes a file 
go run packagename // executes the package

The izgraditi naredba je naredba kompilacije koja kompajlira paket ili datoteku u binarnu izvršnu datoteku.

Ako pokrenete izgraditi naredba bez argumenata nakon imena datoteke ili paketa, go će generirati izvršnu datoteku u korijenskom direktoriju vašeg paketa.

go build main.go // compiles a file  
go build "package name" // compiles a package

Morat ćete ponovno kompajlirati program s izgraditi naredba kada promijenite paket.

Možete navesti direktorij kao argument i izgraditi naredba će izvesti izvršnu datoteku u navedenom direktoriju.

go build file -o "directory" 

Toliko toga možete učiniti uz Go

Go standardna biblioteka je moćna i intuitivna. Možete brzo izraditi moderne aplikacije bez potrebe za instaliranjem vanjskih ovisnosti.

Od izdanja Goa 2009., programeri i tvrtke koristili su ga za različite slučajeve upotrebe, u nizu područja. Njegov uspjeh je prvenstveno zato što Go pruža sintaksu sličnu Pythonu uz performanse slične C-u.