factograf
TG
Sign in

Go

Go
All data from the card 23
Таърихи таъсис
10 ноябри 2009
Номида ба шарафи
M. monax[d]
Мудир/роҳбар
Sameer Ajmani[d]
Тавсеъадиҳанда
Google, Rob Pike[d], Ken Thompson[d], The Go Authors[d] ва Robert Griesemer[d]
Пазируфтаи асари
Си, Oberon-2[d], Limbo, Active Oberon[d], communicating sequential processes[d], Паскал (забони барноманависӣ), Оберон, Smalltalk, Newsqueak[d], Модула-2, Alef[d], АПЛ (забони барноманависӣ), BCPL[d], Modula[d] ва Occam
Намоди хушшонсӣ
Go gopher[d]
Парадигми барноманависӣ
structured programming[d], procedural programming[d], imperative programming[d], concurrent computing[d], барноманависии шайъгаро ва functional programming[d]
Тарроҳ
Rob Pike[d], Ken Thompson[d] ва Robert Griesemer[d]
Систем-омил
DragonFly BSD[d], FreeBSD[d], Linux, macOS, NetBSD[d], OpenBSD[d], Plan 9[d], Solaris[d], Windows, АйОс, Android, AIX[d] ва illumos[d]
Забони барноманависӣ
Go
Махзани коди манбаи репозиторӣ
github.com/golang/go
Issue tracker URL
go-review.googlesource.comgithub.com/golang/go/iss…
Вебгоҳи расмӣ
go.dev​(англ.)
Official blog URL
go.dev/blog/​(англ.)
Official wiki URL
go.dev/wiki/​(англ.)
Хештеги
GoogleGo ва golang
Иҷозатнома
BSD licenses[d]
Вазъияти ҳуқуқи муаллифӣ
copyrighted[d]
Навъи медиа
text/x-go
Reply to
C++
Typing discipline
inference typing[d], static typing[d], structural typing[d], strong typing[d] ва duck typing[d]
Шумори пайгирон
166 743, 205 833 ва 35 000
Пешванди парванда
.go

Go (одатан: golang меноманд) яке аз забони барноманависии бисёрриштагиест, ки дар дохили ширкати Google таҳия шудааст.

Таҳияи забони барноманависӣ Go дар моҳи сентябри соли 2007 оғоз ёфта, тарҳи мустақими он аз ҷониби Роберт Гризмер, Роб Пайк ва Кен Томпсон коркард карда шудааст, ки қаблан дар таҳияи лоиҳаи системаи оператсионии Inferno иштирок карда буданд. Ин забони барноманависӣ моҳи ноябри соли 2009 расман муаррифӣ шуд.

Намунаи забони барноманависии Go

Дар поён намунаи забони барноманависии Go дар барномаи «Hello, World!» намоиш дода шудаст.

package main

import "fmt"

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

Намунаи иҷрои дархости Unix echo:

package main

import (
	"os"
	"flag" // парсер параметров командной строки
)

var omitNewLine = flag.Bool("n", false, "не печатать знак новой строки")

const (
	Space = " "
	NewLine = "\n"
)

func main() {
	flag.Parse() // Сканирование списка аргументов и установка флагов
	var s string
	for i := 0; i < flag.NArg(); i++ {
		if i > 0 {
			s += Space
		}
		s += flag.Arg(i)
	}
	if !*omitNewLine {
		s += NewLine
	}
	os.Stdout.WriteString(s)
}

Адабиёт

  • Донован, Алан А. А., Керниган, Брайан, У. Язык программирования Go = The Go Programming Language. — М.: ООО «И.Д. Вильямс», 2016. — С. 432. — ISBN 978-5-8459-2051-5.
  • Батчер М., Фарина М. Go на практике. — «ДМК Пресс», 2017. — С. 374. — ISBN 978-5-97060-477-9.
  • Марк Саммерфильд. Программирование на Go. Разработка приложений XXI века. — «ДМК Пресс», 2013. — С. 580. — ISBN 978-5-94074-854-0.

In 65 languages

Text from Wikipedia, CC BY-SA 4.0 · Source article