Go (programski jezik)
From Wikipedia, the free encyclopedia
Go je programski jezik, ki ga je razvil Google leta 2007. Avtorji jezika so Robert Griesemer, Rob Pike in Ken Thompson. Programski jezik se prevede s prevajalnikom, kot npr. C ali C++. Programski jezik ima tudi svoj »garbage collector«, ki poskrbi za čiščenje pomnilnika.[12]
Za the 2003 agent-based programming language glej Go! (programming language).
![]() | |
Paradigma | multiparadigmatična: sočasna imperativna, funkcionalna[1] objektno usmirjena[2][3] |
---|---|
Začetna izdaja | 10. november 2009 |
Oblikoval |
|
Razvijalec | The Go Authors[5] |
Stabilna izdaja | Upodobitev lastnosti software version identifier je spodletela: Lastnosti software version identifier ni mogoče najti. (single ) |
Tipizacija | sklepalna, statična, močna,[6] struktrualna,[7][8] nominalna |
Večje implementacije | gc, gofrontend |
Vplivi | Upodobitev lastnosti influenced by je spodletela: Lastnosti influenced by ni mogoče najti. |
Vplival na | Crystal, V |
Programski jezik | Go, zbirni jezik (gc); C++ (gofrontend) |
OS | DragonFly BSD, FreeBSD, Linux, macOS, NetBSD, OpenBSD,[9] Plan 9,[10] Solaris, MS Windows |
Licenca | tročlena BSD + podelitev patenta[11] |
Običajna končnica datoteke | .go |
Spletna stran | go |

Go je postal javen odprtokodni projekt 10. novembra 2009. Po nekaj letih razvijanja je bila 28. marca 2012 izdana prva stabilna različica, imenovana Go 1.[13] Avtor maskote in logotipa je Renée French. Maskota je pod licenco Creative Commons Attribution 3.0.[14]
Osnovne značilnosti jezika
Go poskuša kombinirati razvoj in hitrost delovanja v dinamičnem programskem jeziku, kakršen je Python, z zmogljivostjo in varnostjo prevajanih jezikov, kot sta C ali C++. Velike datoteke se prevedejo v le nekaj sekundah in prevedena koda se izvaja skoraj tako hitro kot v jeziku C.[15]
Go ni tipičen objektno usmerjen programski jezik. Čeprav dovoljuje objektno usmerjeni slog programiranja, ne pozna hierarhičnih tipov razredov. Koncept vmestnika ima drugačen pristop, ki naj bi bil lahek za uporabo in bolj splošen. Zaradi nehierarhičnosti so objekti veliko bolj vsestranski kot v jezikih, kot je java.[16] Da bi bil jezik bolj preprost, so nekatere komponente (dedovanje razredov, trditve (assertions), generično programiranje) namenoma izključene.[17]
Programska koda jezika Go je sestavljena iz:[17]
- deklaracije in uvoza paketov
- funkcij
- spremenljivk
- izjav in izrazov
- komentarjev
Zgled programa Pozdravljen, svet!
package main
import "fmt"
const pi = 3.14159
const smesko = ":-)"
func main() {
const svet = "世界"
fmt.Println("Pozdravljen,", svet)
fmt.Println("Srečen", "Dan", pi, "!")
const resnica = "Resnično."
fmt.Println("Go raztura, kajne?", resnica, smesko)
}
Zgled programa Fibonaccijeva števila
package main
import "fmt"
// fib vrne funkcijo, ki vrne Fibonnacijeva števila
func fib() func() int {
a, b := 0, 1
return func() int {
a, b = b, a + b
return a
}
}
func main() {
f := fib()
// funkcijski klici se izvršujejo z leve proti desni
fmt.Println(f(), f(), f(), f(), f())
}
Sklici
Viri
Wikiwand - on
Seamless Wikipedia browsing. On steroids.