encyklopedia.run.place

Go

Go (po japońsku 囲碁, chińsku 围棋) – tradycyjna gra planszowa o tysiącletniej historii, a także współczesny język programowania opracowany przez firmę Google. W zależności od kontekstu określenie „go” może odnosić się do jednej z dwóch głównych dziedzin: gry w go oraz języka programowania Go. Poniżej przedstawiono najważniejsze informacje o obu znaczeniach.

Gra w go

Historia

Gra w go wywodzi się z chińskiej starożytności, a jej pierwsze wzmianki pochodzą z ok. 2000 p.n.e.. Przez wieki była popularna w Korei i Japonii, gdzie stała się nieodłącznym elementem kultury szlacheckiej i buddyjskiej. W XIX wieku przywędrowała do Europy, a w XX wieku rozwinęła się międzynarodowa scenę turniejową, której szczytami są m.in. turniej World Go Championship i profesjonalny system mistrzowski w Japonii.

Podstawowe zasady

  • Gra rozgrywana jest na kwadratowej planszy o wymiarach 19 × 19 linii (istnieją również mniejsze wersje 13 × 13 i 9 × 9).
  • Na przeciwnikarską stronę planszy rozpoczynają dwaj gracze – czarni i biali. Czarni wykonują pierwszy ruch.
  • Ruch polega na położeniu jednego kamienia na dowolne wolne przecięcie linii.
  • Kamienie tej samej barwy łączą się w grupy. Grupa posiada tzw. „oddechy” (puste sąsiednie pola) – liberty. Gdy grupa zostaje pozbawiona wszystkich oddechów, jest usuwana z planszy jako „zabita”.
  • Celem gry jest zajęcie większej liczby terenów niż przeciwnik, co wyraża się w liczbie kontrolowanych punktów oraz w liczbie captured stones.

Strategia i taktyka

Strategia w go obejmuje długoterminowe zagadnienia, takie jak sente (inicjatywa), kontrola centrum, rozwój mocnych pozycji oraz wyważenie między atakiem a obroną. Taktyczne elementy to m.in. ate (zagrożenie natychmiastowego zabicia), ko (cykliczna sytuacja wymagająca reguły ko) oraz sekwencje (np. tesuji, czyli sprytne posunięcia).

Rozgrywki i ranking

System rankingowy w go opiera się na skalach ELO oraz tradycyjnym systemie stopni (kyu i dan). Początkujący zaczynają od 30‑kyu i stopniowo awansują w stronę 1‑dan, po czym mogą przejść do stopni profesjonalnych.

Język programowania Go

Geneza

Język programowania Go, potocznie zwany Golang, został opracowany w 2007 r. w Sztokholmie przez Roba Pike’a, Ken Thompsona i Roberta Griesemera, a wypuszczony publicznie w 2009 r. jako projekt open‑source. Jego nazwa pochodzi od krótkiego, dwuznakowego kodu języka, a nie od gry w go.

Charakterystyka

  • Statyczny typ systemu, kompilowany do kodu maszynowego.
  • Prosty i czytelny składnik, inspirowany językami C, Pascal i Algol.
  • Wbudowane wsparcie dla równoległości dzięki goroutine i kanałom.
  • Rozbudowany zestaw narzędzi (gofmt, go test, go build) w ramach standardowej biblioteki.

Zastosowania

Go jest szeroko stosowany w infrastrukturze serwerowej, mikroserwisach, systemach chmurowych oraz w projektach typu Docker i Kubernetes. Jego wydajność i łatwość utrzymania przyciągają także twórców narzędzi DevOps oraz aplikacji sieciowych.

Popularność

Według corocznego badania Stack Overflow Developer Survey, Go regularnie plasuje się w czołówce najbardziej pożądanych języków programowania. W 2023 r. było używane przez ponad 10 milionów programistów na całym świecie.

Inne znaczenia i użycia

Słowo „go” funkcjonuje także jako angielski czasownik oznaczający „iść”, „rozpoczynać” lub „przechodzić”. W polskim słowniku używa się go w wyrażeniach typu go west („iść na zachód”) czy go for it („spróbuj”). Jednak w kontekście encyklopedycznym najczęściej odnosi się do wyżej opisanych znaczeń.

Zobacz także