Go je staticky typovaný programovací jazyk. Pôvodne navrhnutý spoločnosťou Google, Go zdieľa podobnosti s C z hľadiska syntaxe. Pokiaľ ide o funkčnosť, Go však prichádza s ďalšími funkciami, ako je bezpečnosť pamäte, garbage collection, štrukturálne typovanie atď. Za posledných niekoľko rokov si Go získal neuveriteľnú popularitu.
Tento návod prejde kroky zostavenia a inštalácie programov v jazyku Go pomocou ukážkového programu Go.
Zostavenie a inštalácia Go
Skôr než prejdeme ďalej, poďme si stručne vysvetliť, čo znamená zostavenie a inštalácia v kontexte programovania v jazyku Go.
V programovaní v jazyku Go sa zostavenie vzťahuje na proces prekladu zdrojového kódu do binárneho spustiteľného súboru. Spustiteľný súbor bude obsahovať potrebný podporný kód, aby mohol bežať nezávisle na cieľovej platforme. Na rozdiel od programov v Ruby/Python, binárne súbory Go vo všeobecnosti nevyžadujú žiadne systémové závislosti na spustenie v novom systéme.
Umiestnenie binárneho súboru Go do cesty k spustiteľným súborom v systéme sa označuje ako inštalácia programu. Ako už bolo spomenuté, tento návod predvedie spustenie, zostavenie a inštaláciu jednoduchého programu „Hello world“ v jazyku Go.
Požiadavky
Pred spustením si prejdime požiadavky, ktoré musíte splniť, aby ste mohli postupovať podľa tohto návodu:
- Správne nakonfigurovaný Ubuntu 20.04. Pozrite si ako nainštalovať a nakonfigurovať Ubuntu server.
- Používateľ bez oprávnení root s privilégiami sudo. Na vykonanie zmien na úrovni systému sa vyžadujú práva root. V tomto návode sa dozviete, ako udeliť oprávnenie sudo ne-root používateľovi.
- Správne nakonfigurované programovacie prostredie Go.
Najprv si rýchlo prejdeme inštaláciu a konfiguráciu programovacieho prostredia Go. Podrobnejší podrobný návod na inštaláciu Go nájdete tu.
Inštalácia Go
Go je k dispozícii na všetkých hlavných platformách (Windows, Linux a macOS). Oficiálne je k dispozícii priamo z Golang. Kvôli názvu webovej stránky sa Go často označuje ako Golang. Tu budeme programovací jazyk Go vždy označovať ako Go a webovú stránku Golang ako Golang.
Golang ponúka podrobnú dokumentáciu o inštalácii Go pre všetky podporované platformy. Oficiálna metóda však popisuje manuálnu inštaláciu. Pri každom vydaní novej verzie musíte inštaláciu manuálne aktualizovať na najnovšiu verziu. Namiesto toho môžeme Go nainštalovať priamo pomocou APT (z predvolených repozitárov Ubuntu) alebo snap (zo Snapcraft).
● Inštalácia Go pomocou APT
Go je priamo k dispozícii z oficiálnych repozitárov Ubuntu. Nie vždy však ide o najnovšiu verziu Go. V repozitári Ubuntu sú k dispozícii aj dva varianty Go: golang-go a gccgo-go. Zatiaľ čo golang-go je oficiálna verzia od Golang, gccgo-go je Go frontend pre GCC (ako súčasť GNU kompilátora). Vo všeobecnosti je golang-go preferovanou voľbou.
Ak chcete nainštalovať golang-go, spustite nasledujúci príkaz APT:
|
1 |
sudo apt update && sudo apt install golang-go |

Skontrolujte verziu Go:
|
1 |
go version |
● Inštalácia Go pomocou snap
Snapy sú univerzálne balíky pre Linux, ktoré je možné nainštalovať na akúkoľvek podporovanú distribúciu. Snapcraft uvádza všetky podporované distribúcie s návodmi na inštaláciu. V Ubuntu je podpora snap povolená v predvolenom nastavení. Go je k dispozícii aj ako snap. Musíte mať na pamäti, že nie je oficiálne spravovaný spoločnosťou Golang. Balík snap spravuje poskytovateľ tretej strany.
Ak chcete nainštalovať Go snap, spustite nasledujúci príkaz:
|
1 |
sudo snap install go --classic |

Potom skontrolujte verziu Go:
|
1 |
go version |
Nastavenie projektu v Go
Náš systém má všetky potrebné nástroje na začatie vývoja aplikácií v jazyku Go. Je čas vytvoriť náš ukážkový projekt. Najprv vytvorte vyhradený adresár pre náš projekt:
|
1 |
mkdir -v demo_project |

Potom zmeňte aktuálny adresár na novovytvorený adresár:
|
1 |
cd demo_project/ |

Here, create a new text file named main.go:
|
1 |
nano main.go |
Nasledujúci kód obsahuje jednoduchý program, ktorý po spustení vypíše „Hello world“. Skopírujte kód:
|
1 2 3 4 5 6 7 |
package main import "fmt" func main() { fmt.Println("hello world!") } |

Uložte súbor a zatvorte editor. Overte, či kód funguje správne:
|
1 |
go run main.go |

Kompilátor Go zostavil zdrojový súbor do binárneho súboru a spustil ho. Taktiež overuje, či program funguje úspešne.
Konfigurácia pracovného priestoru Go
Na správnu inštaláciu programov v jazyku Go musíme nakonfigurovať pracovný priestor Go a GOPATH.
Najprv vytvorte adresárovú štruktúru:
|
1 |
mkdir -pv $HOME/go/{bin,src} |

Ďalej musíme deklarovať hodnotu GOPATH a pridať ju do PATH. Otvorte súbor bashrc :
|
1 |
nano ~/.bashrc |

Na koniec súboru pridajte nasledujúce riadky:
|
1 2 3 |
export GOPATH=$HOME/go export GOBIN=$GOPATH/bin export PATH=$PATH:$GOPATH/bin:/usr/local/go/bin |

Znovu načítajte bashrc:
|
1 |
source ~/.bashrc |
Overte, či bola zmena úspešná:
|
1 |
echo $PATH |
Zostavenie binárnych súborov Go
Táto časť ukáže kompiláciu kódov Go do distribuovateľného samostatného binárneho súboru. Binárny súbor bude obsahovať nielen kód Go, ale aj ďalšie systémové kódy na spustenie binárneho súboru. Ak chcete skompilovať náš kód, spustite nasledujúci príkaz:
|
1 |
go build main.go |

Ak existuje viacero súborov s kódom Go, použite nasledujúci príkaz:
|
1 |
go build |
Ak nie je zadaný žiadny súbor, Go vyhľadá súbory Go v aktuálnom adresári a skompiluje ich všetky. Každý binárny súbor je pomenovaný podľa svojho zdrojového súboru Go. V tomto príklade Go zostavil program main. Spustite program:
|
1 |
./main |

Tento program je pripravený na distribúciu do iných počítačov.
● Zmena názvu binárneho súboru
Pri každom zostavovaní Go automaticky vyberie názov pre spustiteľný súbor. Pokiaľ ide o výber názvu, existujú dve možnosti.
- Ak sa používajú moduly Go, spustiteľný súbor použije poslednú časť názvu modulu.
- Ak sa nepoužíva žiadny modul Go, Go použije názov aktuálneho adresára alebo názov zdrojového súboru.
Práca s komplexnejšími programami si vyžaduje inú konvenciu pomenovania. V takýchto scenároch nie sú tieto predvolené metódy pomenovania veľmi užitočné. V takejto situácii je najlepším spôsobom prispôsobiť výstup pomocou príznaku -o. Poďme si to rýchlo predviesť. Zostavte program Go s príznakom -o na určenie iného názvu súboru:
|
1 |
go build -o bin/hello |

Príznak -o hovorí Go, aby priradil výstup k danému argumentu. V tomto prípade bude spustiteľný súbor umiestnený v adresári bin a bude sa volať hello.
Ďalej otestujte nový spustiteľný súbor:
|
1 |
./bin/hello |
Inštalácia programov Go
Doteraz sme si ukázali zostavovanie distribuovateľných binárnych súborov Go zo zdrojových súborov. Môžeme ich distribuovať do iných systémov, nasadzovať a vykonávať testy. Nemôžu sa však spúšťať mimo svojich zdrojových adresárov. Ak plánujete program aktívne používať, toto obmedzenie môže byť veľmi otravné. Aby sme si to uľahčili, môžeme programy Go nainštalovať a pristupovať k nim odkiaľkoľvek v systéme.
Ak chcete program nainštalovať, spustite v zdrojovom adresári nasledujúci príkaz Go:
|
1 |
go install |

Tento príkaz sa správa rovnako ako go build. Namiesto ponechania spustiteľného súboru v zdrojovom adresári sa však umiestni do nasledujúceho adresára:
|
1 |
$GOPATH/bin |
Premenné GOPATH a GOBIN hovoria Go, kde má hľadať pracovné priestory Go. GOPATH predvolená hodnota je umiestnenie $HOME/go. Manuálne sme nastavili GOBIN na $GOPATH/bin. Ak chcete skontrolovať umiestnenie GOPATH a GOBIN použite nasledujúci príkaz:
|
1 |
go env GOPATH |
|
1 |
go env GOBIN |

Skontrolujte obsah $GOPATH/bin. Náš program by tam mal byť:
|
1 |
ls $GOPATH/bin |

Je čas overiť, či bola inštalácia úspešná. Zmeňte aktuálny adresár na iné miesto a skúste spustiť program Go:
|
1 |
demo_project |

Nakoniec by ste mali byť schopní vziať svoje programy a nainštalovať ich do svojho systému. Môžete ich použiť odkiaľkoľvek a kedykoľvek ich potrebujete.
Záverečné myšlienky
V tomto návode sme úspešne predviedli, ako používať Go toolchains na zostavenie spustiteľných binárnych súborov zo zdrojových kódov. Tieto binárne súbory je možné použiť na iných systémoch aj bez akejkoľvek konfigurácie Go. Nakoniec sme predviedli, ako nainštalovať program Go tak, aby bol dostupný odkiaľkoľvek v systéme.
Pre vývojárov CloudSigma ponúka podporu pre Go API na správu vašich cloudových serverov. Umožňuje úpravu zdrojov a škálovanie infraštruktúry.
Príjemnú prácu s počítačom!




Komentáre
Zatiaľ žiadne komentáre. Buďte prvý.