Go (programazio lengoaia)

Wikipedia, Entziklopedia askea
Go
Paradigmakonpilatua, konkurrentea, inperatiboa, egituratua
DiseinatzaileaRobert Griesemer
Rob Pike
Ken Thompson
GaratzaileaGoogle Inc.
Agerpena2009ko azaroaren 10an
Kaleratze Egonkorra1.73 / 2016ko urriaren 19an
Sistema EragileaLinux, OS X, FreeBSD, NetBSD, OpenBSD, Windows, Plan 9, Dragonfly BSD, Solaris
LizentziaBSD lizentzia
Luzapena.go
Webguneahttps://golang.org/
Inplementazioak
gc, gccgo

Go programazio lengoaia software librea eta kode irekikoa da, Google-ek 2007an sortutakoa. Konpilatua eta konkurrentea da, eta C lengoaiaren sintaxian oinarrituta dago.

Lengoaiaren tresnak[aldatu | aldatu iturburu kodea]

Beste programazio lengoai batzuk bezala, Go-k kode-arazketa, kodea exekutatzeko edo probak egiteko, komando batzuk eskaintzen ditu.

  • go build, paketeak eta fitxategiak konpilatzen ditu
  • go clean, objektu fitxategiak ezabatzen ditu
  • go doc, pakete baten dokumentazioa erakusten du
  • go env, Go ingurunearen informazioa pantailaratzen du
  • go fix, paketeak konpontzen ditu
  • go fmt, kodea formateatzen du
  • go generate, Go fitxategiak sortzen ditu kode-iturria prozesatuz
  • go get, urruneko pakete eta menpekotasunak jaitsi eta instalatzen ditu
  • go install, pakete eta menpekotasunak konpilatu eta instalatzen ditu
  • go list, paketeen zerrenda pantailaratzen du
  • go run, Go programa konpilatu eta abiarazten du
  • go test, proba paketeak
  • go tool, zehaztutako go tresna abiarazten du
  • go version, Go bertsioa erakusten du
  • go vet, kode-iturria erroreak bilatzen ditu.

Sintaxia[aldatu | aldatu iturburu kodea]

Go-ren sintaxia kode zehatza eta irakurgarri mantenduz, C-ren sintaxian aldaketa batzuk egiten ditu. Aldagaiak deklaratzeko orduan i := "nire aldagaia" edo i := 3.2 idatzi daiteke, hau da, aldagaiaren mota adierazi gabe. Aldagaiaren mota adierazi nahi denean, hau beste lengoaiek egiten duten ez bezala, alderantziz egiten da. C-n adibidez, hau egingo genuke int a, b;, Go-n berriz, var a, b int.

Ez da beharrezkoa adierazpen bakoitzaren amaieran puntu eta koma ipintzea. Funtzioek balio bat baino gehiago itzul ditzakete.

Adibideak[aldatu | aldatu iturburu kodea]

Kaixo mundua adibidea:

package main

import "fmt"

func main() {
	fmt.Println("Kaixo Mundua!")
}

Fibonacciren zenbakiak:

package main

import "fmt"

// fib Fibonacci zenbakiak itzultzen dituen
// funtzio bat itzultzen du.
func fib() func() int {
	a, b := 0, 1
	return func() int {
		a, b = b, a+b
		return a
	}
}

func main() {
	f := fib()
	// Funtzio deiak ezkerretik eskumara burutzen dira.
	fmt.Println(f(), f(), f(), f(), f())
}

C++-ren komentario sintaxi berdina erabiltzen du:

/* ...
   ...
   ... */

// ...

Kanpo Loturak[aldatu | aldatu iturburu kodea]

Kanpo estekak[aldatu | aldatu iturburu kodea]