Go dla początkujących - Część 1: Instalacja i pierwsze kroki
Mateusz Kędziora

Witaj w kursie programowania w języku Go! Ten wszechstronny język, stworzony przez Google, zyskuje coraz większą popularność dzięki swojej prostocie, wydajności i możliwościom współbieżności. W tym artykule przeprowadzę Cię krok po kroku przez proces instalacji Go na różnych systemach operacyjnych, wyjaśnie kluczowe pojęcia, takie jak GOPATH
i moduły Go, oraz pokaże, jak kompilować i uruchamiać programy. Przygotuj się na solidną dawkę wiedzy i mnóstwo praktycznych przykładów!
Co to jest Go?
Go, znany również jako Golang, to język programowania o otwartym kodzie źródłowym, zaprojektowany z myślą o efektywności, czytelności i łatwości użycia. Łączy w sobie najlepsze cechy języków dynamicznych i kompilowanych, oferując wysoką wydajność i prostą składnię. Go doskonale sprawdza się w tworzeniu backendów, aplikacji sieciowych, systemów rozproszonych i narzędzi wiersza poleceń.
Instalacja Go
Instalacja Go jest prosta i intuicyjna, niezależnie od używanego systemu operacyjnego. Poniżej znajdziesz instrukcje dla Windows, macOS i Linux.
Windows
- Pobierz instalator: Odwiedź oficjalną stronę Go (https://go.dev/dl/) i pobierz najnowszą wersję instalatora dla Windows (plik MSI).
- Uruchom instalator: Uruchom pobrany plik MSI i postępuj zgodnie z instrukcjami. Domyślnie Go zostanie zainstalowany w katalogu
C:\Program Files\Go
. - Dodaj Go do PATH: Instalator automatycznie powinien dodać ścieżkę do Go do zmiennej środowiskowej
PATH
. Aby to zweryfikować, otwórz wiersz poleceń (cmd) i wpiszgo version
. Powinieneś zobaczyć informację o zainstalowanej wersji Go. Jeśli nie, dodaj ręcznie ścieżkęC:\Program Files\Go\bin
do zmiennejPATH
.
macOS
Pobierz pakiet: Odwiedź stronę Go i pobierz pakiet
.pkg
dla macOS.Uruchom instalator: Uruchom pobrany plik i postępuj zgodnie z instrukcjami. Go zostanie zainstalowany w katalogu
/usr/local/go
.Dodaj Go do PATH (opcjonalnie): W większości przypadków nie jest to konieczne, ponieważ instalator konfiguruje środowisko. Jeśli jednak chcesz dodać ścieżkę ręcznie, otwórz terminal i dodaj następującą linię do pliku
~/.zshrc
(lub~/.bash_profile
w starszych wersjach macOS):export PATH=$PATH:/usr/local/go/bin
Następnie uruchom polecenie
source ~/.zshrc
(lubsource ~/.bash_profile
).
Linux
Pobierz archiwum: Odwiedź stronę Go i pobierz archiwum
.tar.gz
dla Twojej architektury.Rozpakuj archiwum: Otwórz terminal i rozpakuj pobrane archiwum do katalogu
/usr/local
:sudo tar -C /usr/local -xzf go*.tar.gz
Dodaj Go do PATH: Dodaj następującą linię do pliku
~/.bashrc
lub~/.zshrc
:export PATH=$PATH:/usr/local/go/bin
Następnie uruchom polecenie
source ~/.bashrc
lubsource ~/.zshrc
.
GOPATH i moduły Go
W przeszłości projekty Go były organizowane w oparciu o zmienną środowiskową GOPATH
. Obecnie zalecanym podejściem jest użycie modułów Go.
GOPATH (starsze podejście)
GOPATH
to zmienna środowiskowa, która wskazywała na katalog, w którym przechowywane były kody źródłowe, pakiety i pliki binarne Go. Struktura katalogów wewnątrz GOPATH
była ściśle określona:
src
: Kod źródłowy.pkg
: Skompilowane pakiety.bin
: Pliki wykonywalne.
Moduły Go (zalecane podejście)
Moduły Go (Go Modules) to system zarządzania zależnościami, który upraszcza tworzenie i udostępnianie projektów Go. Moduł to zbiór pakietów Go, które są wersjonowane razem.
Aby włączyć obsługę modułów, utwórz plik go.mod
w głównym katalogu Twojego projektu:
go mod init nazwa_modułu
Na przykład:
go mod init example.com/hello
Spowoduje to utworzenie pliku go.mod
z następującą zawartością:
module example.com/hello
go 1.23.5
Kompilacja i uruchamianie programów Go
Napiszmy prosty program “Hello, World!” w Go. Utwórz plik main.go
z następującą zawartością:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
Użycie go run
Aby uruchomić program, użyj polecenia go run
:
go run main.go
Wynik:
Hello, World!
Użycie go build
Aby skompilować program do pliku wykonywalnego, użyj polecenia go build
:
go build main.go
Spowoduje to utworzenie pliku wykonywalnego main
(lub main.exe
na Windows). Aby go uruchomić, wpisz:
./main # Linux/macOS
main.exe # Windows
Przykłady kodu
Zmienne i typy danych
package main
import "fmt"
func main() {
var name string = "Jan"
age := 30 // Krótka deklaracja
var isStudent bool = false
fmt.Println("Imię:", name)
fmt.Println("Wiek:", age)
fmt.Println("Student:", isStudent)
}
Funkcje
package main
import "fmt"
func add(x int, y int) int {
return x + y
}
func main() {
sum := add(5, 3)
fmt.Println("Suma:", sum)
}
Pętle
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
fmt.Println(i)
}
}
Wszystkie pokazane wyżej elementy języka zostaną dokładnie omówione w kolejnych częściach kursu. Jeśli masz jakieś pytania lub chcesz dowiedzieć się więcej, nie wahaj się zapytać.
Praca domowa
- Napisz program, który pobiera od użytkownika imię i nazwisko, a następnie wyświetla powitanie w formacie “Witaj, Imię Nazwisko!”.
- Napisz program, który oblicza pole i obwód prostokąta na podstawie podanych długości boków.
Podsumowanie
W tym artykule omówiliśmy podstawy instalacji języka Go, wyjaśniliśmy pojęcia GOPATH
i modułów, oraz pokazaliśmy, jak kompilować i uruchamiać programy. Zachęcamy Cię do dalszego eksperymentowania z Go i lektury kolejnych artykułów z naszego kursu dla początkujących. Go to potężne narzędzie, które oferuje wiele możliwości. Baw się dobrze, programując!
Dodatkowe materiały
- Oficjalna dokumentacja Go: https://go.dev/doc/
- A Tour of Go: https://go.dev/tour/welcome/1
Mam nadzieję że ten artykuł był pomocny. Jeśli masz jakieś pytania, śmiało zadawaj je w komentarzach!
Polecane artykuły
Docker vs Kubernetes: Który dla Ciebie w 2025?
Docker i Kubernetes objaśnione! Która technologia lepsza dla początkujących w 2025? Porównanie, przykłady i przyszłość.
Mateusz Kędziora
DevOps: Automatyzacja zadań sysadmina dla programistów
Zautomatyzuj pracę sysadmina w środowisku DevOps! Praktyczne przykłady, skrypty, Ansible, Terraform, Prometheus i Grafana.
Mateusz Kędziora
Automatyzacja Linux/macOS z Bash: Praktyczny Przewodnik
Zacznij automatyzować system Linux/macOS z Bash! Dowiedz się, czym jest Bash, jak pisać skrypty i używać podstawowych komend.
Mateusz Kędziora